-
Agnar
according to the illumos HCL, the LPe11000 and LPe12000 cards should work, but according to the driver it's unsupported?! Apr 4 22:27:41 gem emlxs: [ID 349649 kern.info] [ B.1C2C]emlxs1: ERROR: 101: Driver attach failed. (Unsupported adapter found. Id:35 Vendor id:0x10df Device id:0xfc40 SSDID:0xfc41 Model:LPe12000-S)
-
tsoome
/* Oracle branded adapters are not supported in this driver */
-
Agnar
oh, there was something
-
Agnar
thanks for bringing that back up. would it help to flash a different firmware on it? I guess no?
-
tsoome
you can try, I guess
-
Agnar
I'll check if broadcom still has firmware for those cards...
-
tsoome
I'd check with Carsten - maybe he can comment about background there
-
Agnar
good idea
-
gitomat
[illumos-gate] 16423 Import fletcher-4 algorithms from OpenZFS -- Andy Fiddaman <illumos⊙fn>
-
gitomat
[illumos-gate] 11745 fmdump missing -i and -I parameter documentation in the man pages -- Keith M Wesolowski <wesolows⊙oc>
-
richlowe
so after a bit of a journey, I've re-discovered that a set of our false positive smatch warnings are because of old-style flexible array member declarations. `struct foo { char foo[1]; }`. That, for instance, is why smatch things zfs_ctldir.c overflows strcpy()
-
richlowe
seemingly smatch knows(?) that [0] is special, but takes [1] to mean [1]
-
richlowe
what I don't know, is what the implications are of making them new-style
-
richlowe
beyond -- I assume -- all the structs being a perhaps very shitty to discover byte shorter.
-
rmustacc
So, the old style unfortunately trips over the modern optimizer.
-
rmustacc
[0] is a GNU extension, so it knows that it's like C99 [].
-
richlowe
ok, sorry, I thought [0] was the c99
-
rmustacc
The main implications are either GNU 89 or C 99, and the size implications.
-
rmustacc
So in non-public structures, I could go to C99 [] if you can.
-
richlowe
and then audit for allocations that assume a -1
-
rmustacc
Yeah.
-
rmustacc
I dealt with some C99_FEATURES related bits for this for new public versions of this in the xregs procfs.
-
sommerfeld
I suspect the rationale for what smatch does is that [0] could only possibly be useful for a flexible array, but [1] could really mean [1]..
-
richlowe
Yeah, the rationale is fine, it's the fixing it.
-
sommerfeld
the one to watch out for when auditing is where the extra byte is used for a null terminator. Or when it's using sizeof(struct foo) and it's actually a delta of alignof(something) rather than 1.
-
sommerfeld
(sizeof(struct foo) rather than sizeof(foo.foo) that is)
-
tsoome
comstar also has very annoying take on structures...