TWA(4)

πŸ’– TWA(4) πŸ’–

okay so bestie, gather round, we're talking about twa β€” that's the 3ware 9000/9500/9550/9650 series SATA RAID controllers driver. it lives in section 4 of the Kernel Interfaces Manual, so it's a device driver page, and honestly? it's giving workhorse energy. let's get into it 🫢


✨ SYNOPSIS ✨

so you wanna bake this driver straight into your kernel? no prob. drop these lines into your kernel config file:

device scbus
device twa

or, if you'd rather load it as a module at boot time (iconic lazy-girl move, love that for you), put this one single line into loader.conf(5):

twa_load="YES"

that's it. that's the whole vibe. πŸ’…


🌸 DESCRIPTION 🌸

the twa driver provides support for AMCC's 3ware 9000/9500/9550/9650 series SATA controllers. no cap.

these controllers come in 4, 8, 12 or 16-port configurations, and they support these RAID levels, periodt: 0, 1, 10, 5, 50. πŸŽ€

the device nodes for the controllers are of the form /dev/twaX, where X is the controller number. and here's the fun structural bit β€” the driver is implemented as a SCSI SIM under CAM, and because of that, the logical units it controls are accessible via the device nodes /dev/daY, where Y is the logical unit number. so like, two sets of nodes, one driver. multitasking queen. πŸ‘‘


πŸ¦‹ HARDWARE πŸ¦‹

the twa driver supports these SATA RAID controllers, and yes i'm listing every single one, because we do not skip entries in this house:

  • AMCC's 3ware 9500S-4LP
  • AMCC's 3ware 9500S-8
  • AMCC's 3ware 9500S-8MI
  • AMCC's 3ware 9500S-12
  • AMCC's 3ware 9500S-12MI
  • AMCC's 3ware 9500SX-4LP
  • AMCC's 3ware 9500SX-8LP
  • AMCC's 3ware 9500SX-12
  • AMCC's 3ware 9500SX-12MI
  • AMCC's 3ware 9500SX-16ML
  • AMCC's 3ware 9550SX-4LP
  • AMCC's 3ware 9550SX-8LP
  • AMCC's 3ware 9550SX-12
  • AMCC's 3ware 9550SX-12MI
  • AMCC's 3ware 9550SX-16ML
  • AMCC's 3ware 9650SE-2LP
  • AMCC's 3ware 9650SE-4LPML
  • AMCC's 3ware 9650SE-8LPML
  • AMCC's 3ware 9650SE-12ML
  • AMCC's 3ware 9650SE-16ML
  • AMCC's 3ware 9650SE-24M8

twenty-one cards. twenty-one. the dedication. πŸ”₯


πŸ’€ DIAGNOSTICS πŸ’€

whenever the driver encounters a command failure, it prints out an error code in this format: "ERROR: (<error source>: <error code>):" β€” followed by a text description of the error. so if you see that, that's your sign, bestie, go read the text after it. πŸ™ˆ

there are other error messages and warnings that the driver prints out too, depending on the kinds of errors that it encounters. so the output varies, it's not one-size-fits-all.

and then β€” the debug mode. if the driver is compiled with TWA_DEBUG defined, it prints out a whole bunch of debug messages. and how many is "a whole bunch"? it varies depending on the value assigned to TWA_DEBUG, which ranges from 0 to 10. so like, 0 is chill, 10 is unhinged, pick your fighter. 😭


πŸ‘‘ AUTHORS πŸ‘‘

the twa driver and manpage were written by Vinod Kashyap <vkashyap@FreeBSD.org>. thank you for your service, king. 🫢


and that's the whole page! this one came from the Debian folks, dated May 9, 2007 β€” so yeah, it's vintage, it's retro, it's still valid. stay slay, go configure your RAID array responsibly πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from