/bin/sh arithmetic doesn't seem to like leading 0 now

2012-09-21 Thread David Wolfskill
I have a construct in a shell script that I had been using under
stable/8 (most recently, @r240259), but which throws an error under
stable/9 (at least as early as @r238602):

$ echo $(( ( $( date +%m ) - 1 ) / 3 + 1 ))
3
$ uname -r
8.3-PRERELEASE

$ echo $(( ( $( date +%m ) - 1 ) / 3 + 1 ))
arithmetic expression: expecting ')':  ( 09 - 1 ) / 3 + 1 
$ uname -r
9.1-PRERELEASE

Trying bits  pieces of the above, I narrowed the issue down to:

$ echo $(( 09 + 0 ))
arithmetic expression: expecting EOF:  09 + 0 

while

$ echo $(( 9 + 0 ))
9
$ 

is not a problem.

Is this intentional?

(I can work around it -- e.g., by using sed to strip leading 0 from the
month number (since strftime() doesn't appear to have a format that
provides the value in a form that lacks the leading zero for values 
10).  But I'd rather not do that if I don't need to.)

Thanks!

Peace,
david
-- 
David H. Wolfskill  da...@catwhisker.org
Depriving a girl or boy of an opportunity for education is evil.

See http://www.catwhisker.org/~david/publickey.gpg for my public key.


pgpXztQE4WXZo.pgp
Description: PGP signature


Re: /bin/sh arithmetic doesn't seem to like leading 0 now

2012-09-21 Thread Brandon Allbery
On Fri, Sep 21, 2012 at 1:09 PM, David Wolfskill da...@catwhisker.orgwrote:

 $ echo $(( 09 + 0 ))


Unable to get to fbsd box now but suspicious mind wants to know what
happens with 07 in place of 09.

-- 
brandon s allbery  allber...@gmail.com
wandering unix systems administrator (available) (412) 475-9364 vm/sms
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to freebsd-stable-unsubscr...@freebsd.org


Re: /bin/sh arithmetic doesn't seem to like leading 0 now

2012-09-21 Thread David Wolfskill
On Fri, Sep 21, 2012 at 01:20:07PM -0400, Brandon Allbery wrote:
 On Fri, Sep 21, 2012 at 1:09 PM, David Wolfskill da...@catwhisker.orgwrote:
 
  $ echo $(( 09 + 0 ))
 
 
 Unable to get to fbsd box now but suspicious mind wants to know what
 happens with 07 in place of 09.

As (I) expected, it's handled Just fine:

$ uname -r
9.1-PRERELEASE
$ echo $(( 07 + 0 ))
7
$ 

So yeah, this seems to be something involving treating leading 0 as
indicating octal (and seriously disliking 9 in such a context).

Peace,
david
-- 
David H. Wolfskill  da...@catwhisker.org
Depriving a girl or boy of an opportunity for education is evil.

See http://www.catwhisker.org/~david/publickey.gpg for my public key.


pgptkIFmc1Vbm.pgp
Description: PGP signature


Re: /bin/sh arithmetic doesn't seem to like leading 0 now

2012-09-21 Thread Jilles Tjoelker
On Fri, Sep 21, 2012 at 10:09:02AM -0700, David Wolfskill wrote:
 I have a construct in a shell script that I had been using under
 stable/8 (most recently, @r240259), but which throws an error under
 stable/9 (at least as early as @r238602):

 $ echo $(( ( $( date +%m ) - 1 ) / 3 + 1 ))
 3
 $ uname -r
 8.3-PRERELEASE

 $ echo $(( ( $( date +%m ) - 1 ) / 3 + 1 ))
 arithmetic expression: expecting ')':  ( 09 - 1 ) / 3 + 1 
 $ uname -r
 9.1-PRERELEASE

 Trying bits  pieces of the above, I narrowed the issue down to:

 $ echo $(( 09 + 0 ))
 arithmetic expression: expecting EOF:  09 + 0 

 while

 $ echo $(( 9 + 0 ))
 9
 $ 

 is not a problem.

 Is this intentional?

Yes, it was changed with r216547, December 2010.

This was done to avoid an inconsistency where constants starting with
0 and containing 8 or 9 were decimal, so something like
$((018-017)) expanded to 3.

There are indeed various cases where this inconsistency does not matter
(because the numbers with leading zeroes do not exceed 10).

 (I can work around it -- e.g., by using sed to strip leading 0 from the
 month number (since strftime() doesn't appear to have a format that
 provides the value in a form that lacks the leading zero for values 
 10).  But I'd rather not do that if I don't need to.)

You can use  date +%-m  although it is not in POSIX.

With POSIX only, it is still possible to do it reasonably efficiently,
for example $(( 1$(date +%m) - 100 )) or v=$(date +%m); v=${v#0}.

-- 
Jilles Tjoelker
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to freebsd-stable-unsubscr...@freebsd.org


Re: /bin/sh arithmetic doesn't seem to like leading 0 now

2012-09-21 Thread David Wolfskill
On Fri, Sep 21, 2012 at 07:34:06PM +0200, Jilles Tjoelker wrote:
 ...
  Is this intentional?
 
 Yes, it was changed with r216547, December 2010.
 
 This was done to avoid an inconsistency where constants starting with
 0 and containing 8 or 9 were decimal, so something like
 $((018-017)) expanded to 3.

Ah; OK.

 There are indeed various cases where this inconsistency does not matter
 (because the numbers with leading zeroes do not exceed 10).

Sure.  Especially when working with month numbers. :-}

  (I can work around it -- e.g., by using sed to strip leading 0 from the
  month number (since strftime() doesn't appear to have a format that
  provides the value in a form that lacks the leading zero for values 
  10).  But I'd rather not do that if I don't need to.)
 
 You can use  date +%-m  although it is not in POSIX.

Ah -- I see that now (%-*   GNU libc extension)

 With POSIX only, it is still possible to do it reasonably efficiently,
 for example $(( 1$(date +%m) - 100 )) or v=$(date +%m); v=${v#0}.
 ...

Thanks.

Peace,
david
-- 
David H. Wolfskill  da...@catwhisker.org
Depriving a girl or boy of an opportunity for education is evil.

See http://www.catwhisker.org/~david/publickey.gpg for my public key.


pgpASE76ajrnq.pgp
Description: PGP signature


Re: /bin/sh arithmetic doesn't seem to like leading 0 now

2012-09-21 Thread Daryl Richards

On 21/09/2012 1:20 PM, Brandon Allbery wrote:

On Fri, Sep 21, 2012 at 1:09 PM, David Wolfskill da...@catwhisker.orgwrote:


$ echo $(( 09 + 0 ))


Unable to get to fbsd box now but suspicious mind wants to know what
happens with 07 in place of 09.



Interestingly enough, bash gives a proper explanation:

bash$ echo $(( 09 + 0 ))
-bash: 09: value too great for base (error token is 09)
bash$ echo $(( 07 + 0 ))
7

--
Daryl Richards
Isle Technical Services Inc
(519) 573-3399

___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to freebsd-stable-unsubscr...@freebsd.org


tws bug ? (LSI SAS 9750)

2012-09-21 Thread Mike Tancsa
Hi,
I have been trying out a nice new tws controller and decided to enable
debugging in the kernel and run some stress tests.  With a regular
GENERIC kernel, it boots up fine.  But with debugging, it panics on
boot. Anyone know whats up ? Is this something that should be sent
directly to LSI ?


pcib0: ACPI Host-PCI bridge port 0xcf8-0xcff on acpi0
pci0: ACPI PCI bus on pcib0
pcib1: ACPI PCI-PCI bridge irq 16 at device 1.0 on pci0
pci1: ACPI PCI bus on pcib1
pcib2: ACPI PCI-PCI bridge irq 17 at device 1.1 on pci0
pci2: ACPI PCI bus on pcib2
LSI 3ware device driver for SAS/SATA storage controllers, version:
10.80.00.003
tws0: LSI 3ware SAS/SATA Storage Controller port 0x4000-0x40ff mem
0xc246-0xc2463fff,0xc240-0xc243 irq 17 at device 0.0 on pci2
tws0: Using legacy INTx
panic: _mtx_lock_sleep: recursed on non-recursive mutex tws_io_lock @
/usr/HEAD/src/sys/dev/tws/tws_hdm.c:287

cpuid = 0
KDB: stack backtrace:
db_trace_self_wrapper() at db_trace_self_wrapper+0x2a
kdb_backtrace() at kdb_backtrace+0x37
panic() at panic+0x1d8
_mtx_lock_sleep() at _mtx_lock_sleep+0x27f
_mtx_lock_flags() at _mtx_lock_flags+0xf1
tws_submit_command() at tws_submit_command+0x3f
tws_dmamap_data_load_cbfn() at tws_dmamap_data_load_cbfn+0xb7
bus_dmamap_load() at bus_dmamap_load+0x16c
tws_map_request() at tws_map_request+0x78
tws_get_param() at tws_get_param+0xe1
tws_display_ctlr_info() at tws_display_ctlr_info+0x4c
tws_init_ctlr() at tws_init_ctlr+0x6d
tws_attach() at tws_attach+0x68c
device_attach() at device_attach+0x72
bus_generic_attach() at bus_generic_attach+0x1a
acpi_pci_attach() at acpi_pci_attach+0x164
device_attach() at device_attach+0x72
bus_generic_attach() at bus_generic_attach+0x1a
acpi_pcib_attach() at acpi_pcib_attach+0x1a7
acpi_pcib_pci_attach() at acpi_pcib_pci_attach+0x9b
device_attach() at device_attach+0x72
bus_generic_attach() at bus_generic_attach+0x1a
acpi_pci_attach() at acpi_pci_attach+0x164
device_attach() at device_attach+0x72
bus_generic_attach() at bus_generic_attach+0x1a
acpi_pcib_attach() at acpi_pcib_attach+0x1a7
acpi_pcib_acpi_attach() at acpi_pcib_acpi_attach+0x1f6
device_attach() at device_attach+0x72
bus_generic_attach() at bus_generic_attach+0x1a
acpi_attach() at acpi_attach+0xbc1
device_attach() at device_attach+0x72
bus_generic_attach() at bus_generic_attach+0x1a
nexus_acpi_attach() at nexus_acpi_attach+0x69
device_attach() at device_attach+0x72
bus_generic_new_pass() at bus_generic_new_pass+0xd6
bus_set_pass() at bus_set_pass+0x7a
configure() at configure+0xa
mi_startup() at mi_startup+0x77
btext() at btext+0x2c
KDB: enter: panic
[ thread pid 0 tid 10 ]
Stopped at  kdb_enter+0x3b: movq$0,0x993262(%rip)
db


int
tws_submit_command(struct tws_softc *sc, struct tws_request *req)
{
u_int32_t regl, regh;
u_int64_t mfa=0;

/*
 * mfa register  read and write must be in order.
 * Get the io_lock to protect against simultinous
 * passthru calls
 */
mtx_lock(sc-io_lock);

if ( sc-obfl_q_overrun ) {
tws_init_obfl_q(sc);
}



With no debugging in the kernel, it boots up fine

pcib2: ACPI PCI-PCI bridge irq 17 at device 1.1 on pci0
pci2: ACPI PCI bus on pcib2
LSI 3ware device driver for SAS/SATA storage controllers, version:
10.80.00.003
tws0: LSI 3ware SAS/SATA Storage Controller port 0x4000-0x40ff mem
0xc246-0xc2463fff,0xc240-0xc243 irq 17 at device 0.0 on pci2
tws0: Using legacy INTx
tws0: Controller details: Model 9750-4i, 8 Phys, Firmware FH9X
5.12.00.007, BIOS BE9X 5.11.00.006
em0: Intel(R) PRO/1000 Network Connection 7.3.2 port 0x5040-0x505f mem
0xc250-0xc251,0xc257-0xc2570fff irq 19 at device 25.0 on pci0
em0: Using an MSI interrupt
em0: Ethernet address: 00:1e:67:45:b6:29
ehci0: EHCI (generic) USB 2.0 controller mem 0xc256-0xc25603ff irq
22 at device 26.0 on pci0
usbus0: EHCI version 1.0
usbus0 on ehci0


tws0@pci0:2:0:0:class=0x010400 card=0x000113c1 chip=0x101013c1
rev=0x05 hdr=0x00
vendor = '3ware Inc'
device = '9750 SAS2/SATA-II RAID PCIe'
class  = mass storage
subclass   = RAID
bar   [10] = type I/O Port, range 32, base 0x4000, size 256, enabled
bar   [14] = type Memory, range 64, base 0xc246, size 16384, enabled
bar   [1c] = type Memory, range 64, base 0xc240, size 262144,
enabled
cap 01[50] = powerspec 3  supports D0 D1 D2 D3  current D0
cap 10[68] = PCI-Express 2 endpoint max data 128(4096) link x4(x8)
cap 03[d0] = VPD
cap 05[a8] = MSI supports 1 message, 64 bit
ecap 0001[100] = AER 1 1 fatal 0 non-fatal 0 corrected
ecap 0004[138] = unknown 1
  PCI-e errors = Fatal Error Detected
 Unsupported Request Detected
 Fatal = Unsupported Request




Also, any reason NOT to set hw.tws.enable_msi=1 in /boot/loader.conf ?

---Mike



-- 
---
Mike Tancsa, tel +1 519 651 3400
Sentex Communications, m...@sentex.net
Providing Internet services since 1994 www.sentex.net
Cambridge, Ontario 

Re: tws bug ? (LSI SAS 9750)

2012-09-21 Thread Jim Harris
On Fri, Sep 21, 2012 at 1:07 PM, Mike Tancsa m...@sentex.net wrote:
 Hi,
 I have been trying out a nice new tws controller and decided to enable
 debugging in the kernel and run some stress tests.  With a regular
 GENERIC kernel, it boots up fine.  But with debugging, it panics on
 boot. Anyone know whats up ? Is this something that should be sent
 directly to LSI ?

Through a code inspection, this mutex is being recursed whether or not
debugging is enabled.  There is no code path here specific to
INVARIANTS.  And the main IO path in this driver is always recursing
on this lock - it is not specific to the initialization callstack you
listed below.

The best course of action seems to be initializing the lock with
MTX_RECURSE, since the driver seems to expect to be able to recurse on
the io_lock.  Can you try the following patch?

diff --git a/sys/dev/tws/tws.c b/sys/dev/tws/tws.c
index b1615db..d156d40 100644
--- a/sys/dev/tws/tws.c
+++ b/sys/dev/tws/tws.c
@@ -197,7 +197,7 @@ tws_attach(device_t dev)
 mtx_init( sc-q_lock, tws_q_lock, NULL, MTX_DEF);
 mtx_init( sc-sim_lock,  tws_sim_lock, NULL, MTX_DEF);
 mtx_init( sc-gen_lock,  tws_gen_lock, NULL, MTX_DEF);
-mtx_init( sc-io_lock,  tws_io_lock, NULL, MTX_DEF);
+mtx_init( sc-io_lock,  tws_io_lock, NULL, MTX_DEF | MTX_RECURSE);

 if ( tws_init_trace_q(sc) == FAILURE )
 printf(trace init failure\n);




 pcib0: ACPI Host-PCI bridge port 0xcf8-0xcff on acpi0
 pci0: ACPI PCI bus on pcib0
 pcib1: ACPI PCI-PCI bridge irq 16 at device 1.0 on pci0
 pci1: ACPI PCI bus on pcib1
 pcib2: ACPI PCI-PCI bridge irq 17 at device 1.1 on pci0
 pci2: ACPI PCI bus on pcib2
 LSI 3ware device driver for SAS/SATA storage controllers, version:
 10.80.00.003
 tws0: LSI 3ware SAS/SATA Storage Controller port 0x4000-0x40ff mem
 0xc246-0xc2463fff,0xc240-0xc243 irq 17 at device 0.0 on pci2
 tws0: Using legacy INTx
 panic: _mtx_lock_sleep: recursed on non-recursive mutex tws_io_lock @
 /usr/HEAD/src/sys/dev/tws/tws_hdm.c:287

 cpuid = 0
 KDB: stack backtrace:
 db_trace_self_wrapper() at db_trace_self_wrapper+0x2a
 kdb_backtrace() at kdb_backtrace+0x37
 panic() at panic+0x1d8
 _mtx_lock_sleep() at _mtx_lock_sleep+0x27f
 _mtx_lock_flags() at _mtx_lock_flags+0xf1
 tws_submit_command() at tws_submit_command+0x3f
 tws_dmamap_data_load_cbfn() at tws_dmamap_data_load_cbfn+0xb7
 bus_dmamap_load() at bus_dmamap_load+0x16c
 tws_map_request() at tws_map_request+0x78
 tws_get_param() at tws_get_param+0xe1
 tws_display_ctlr_info() at tws_display_ctlr_info+0x4c
 tws_init_ctlr() at tws_init_ctlr+0x6d
 tws_attach() at tws_attach+0x68c
 device_attach() at device_attach+0x72
 bus_generic_attach() at bus_generic_attach+0x1a
 acpi_pci_attach() at acpi_pci_attach+0x164
 device_attach() at device_attach+0x72
 bus_generic_attach() at bus_generic_attach+0x1a
 acpi_pcib_attach() at acpi_pcib_attach+0x1a7
 acpi_pcib_pci_attach() at acpi_pcib_pci_attach+0x9b
 device_attach() at device_attach+0x72
 bus_generic_attach() at bus_generic_attach+0x1a
 acpi_pci_attach() at acpi_pci_attach+0x164
 device_attach() at device_attach+0x72
 bus_generic_attach() at bus_generic_attach+0x1a
 acpi_pcib_attach() at acpi_pcib_attach+0x1a7
 acpi_pcib_acpi_attach() at acpi_pcib_acpi_attach+0x1f6
 device_attach() at device_attach+0x72
 bus_generic_attach() at bus_generic_attach+0x1a
 acpi_attach() at acpi_attach+0xbc1
 device_attach() at device_attach+0x72
 bus_generic_attach() at bus_generic_attach+0x1a
 nexus_acpi_attach() at nexus_acpi_attach+0x69
 device_attach() at device_attach+0x72
 bus_generic_new_pass() at bus_generic_new_pass+0xd6
 bus_set_pass() at bus_set_pass+0x7a
 configure() at configure+0xa
 mi_startup() at mi_startup+0x77
 btext() at btext+0x2c
 KDB: enter: panic
 [ thread pid 0 tid 10 ]
 Stopped at  kdb_enter+0x3b: movq$0,0x993262(%rip)
 db


 int
 tws_submit_command(struct tws_softc *sc, struct tws_request *req)
 {
 u_int32_t regl, regh;
 u_int64_t mfa=0;

 /*
  * mfa register  read and write must be in order.
  * Get the io_lock to protect against simultinous
  * passthru calls
  */
 mtx_lock(sc-io_lock);

 if ( sc-obfl_q_overrun ) {
 tws_init_obfl_q(sc);
 }



 With no debugging in the kernel, it boots up fine

 pcib2: ACPI PCI-PCI bridge irq 17 at device 1.1 on pci0
 pci2: ACPI PCI bus on pcib2
 LSI 3ware device driver for SAS/SATA storage controllers, version:
 10.80.00.003
 tws0: LSI 3ware SAS/SATA Storage Controller port 0x4000-0x40ff mem
 0xc246-0xc2463fff,0xc240-0xc243 irq 17 at device 0.0 on pci2
 tws0: Using legacy INTx
 tws0: Controller details: Model 9750-4i, 8 Phys, Firmware FH9X
 5.12.00.007, BIOS BE9X 5.11.00.006
 em0: Intel(R) PRO/1000 Network Connection 7.3.2 port 0x5040-0x505f mem
 0xc250-0xc251,0xc257-0xc2570fff irq 19 at device 25.0 on pci0
 em0: Using an MSI interrupt
 em0: Ethernet address: 00:1e:67:45:b6:29
 ehci0: EHCI (generic) USB 2.0 controller mem 

Re: tws bug ? (LSI SAS 9750)

2012-09-21 Thread Mike Tancsa
On 9/21/2012 4:59 PM, Jim Harris wrote:
 boot. Anyone know whats up ? Is this something that should be sent
 directly to LSI ?
 
 Through a code inspection, this mutex is being recursed whether or not
 debugging is enabled.  There is no code path here specific to
 INVARIANTS.  And the main IO path in this driver is always recursing
 on this lock - it is not specific to the initialization callstack you
 listed below.
 
 The best course of action seems to be initializing the lock with
 MTX_RECURSE, since the driver seems to expect to be able to recurse on
 the io_lock.  Can you try the following patch?
 
 diff --git a/sys/dev/tws/tws.c b/sys/dev/tws/tws.c
 index b1615db..d156d40 100644
 --- a/sys/dev/tws/tws.c
 +++ b/sys/dev/tws/tws.c
 @@ -197,7 +197,7 @@ tws_attach(device_t dev)
  mtx_init( sc-q_lock, tws_q_lock, NULL, MTX_DEF);
  mtx_init( sc-sim_lock,  tws_sim_lock, NULL, MTX_DEF);
  mtx_init( sc-gen_lock,  tws_gen_lock, NULL, MTX_DEF);
 -mtx_init( sc-io_lock,  tws_io_lock, NULL, MTX_DEF);
 +mtx_init( sc-io_lock,  tws_io_lock, NULL, MTX_DEF | MTX_RECURSE);
 
  if ( tws_init_trace_q(sc) == FAILURE )
  printf(trace init failure\n);


Thanks, that allows it to boot up now!

pci2: ACPI PCI bus on pcib2
LSI 3ware device driver for SAS/SATA storage controllers, version:
10.80.00.003
tws0: LSI 3ware SAS/SATA Storage Controller port 0x4000-0x40ff mem
0xc246-0xc2463fff,0xc240-0xc243 irq 17 at device 0.0 on pci2
tws0: Using MSI
tws0: Controller details: Model 9750-4i, 8 Phys, Firmware FH9X
5.12.00.007, BIOS BE9X 5.11.00.006
em0: Intel(R) PRO/1000 Network Connection 7.3.2 port 0x5040-0x505f mem
0xc250-0xc251,0xc257-0xc2570fff irq 19 at device 25.0 on pci0
.
then a lot of
.
(probe65:tws0:0:65:0): INQUIRY. CDB: 12 0 0 0 24 0
(probe65:tws0:0:65:0): CAM status: Invalid Target ID
(probe65:tws0:0:65:0): Error 22, Unretryable error
(probe1:tws0:0:1:0): INQUIRY. CDB: 12 0 0 0 24 0
(probe1:tws0:0:1:0): CAM status: Invalid Target ID
(probe1:tws0:0:1:0): Error 22, Unretryable error
(probe2:tws0:0:2:0): INQUIRY. CDB: 12 0 0 0 24 0
(probe2:tws0:0:2:0): CAM status: Invalid Target ID
.
.
.
(probe63:tws0:0:63:0): INQUIRY. CDB: 12 0 0 0 24 0
(probe63:tws0:0:63:0): CAM status: Invalid Target ID
(probe63:tws0:0:63:0): Error 22, Unretryable error
(probe64:tws0:0:64:0): INQUIRY. CDB: 12 0 0 0 24 0
(probe64:tws0:0:64:0): CAM status: Invalid Target ID
(probe64:tws0:0:64:0): Error 22, Unretryable error
da0 at tws0 bus 0 scbus0 target 0 lun 0
da0: LSI 9750-4iDISK 5.12 Fixed Direct Access SCSI-5 device
da0: 6000.000MB/s transfers
da0: 953654MB (1953083392 512 byte sectors: 255H 63S/T 121573C)
SMP: AP CPU #1 Launched!
SMP: AP CPU #4 Launched!




 Also, any reason NOT to set hw.tws.enable_msi=1 in /boot/loader.conf ?


Any thoughts on msi vs no msi ?  Time to run some stress tests.  Its
certainly a fast little controller for the money!


---Mike
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to freebsd-stable-unsubscr...@freebsd.org


Re: /bin/sh arithmetic doesn't seem to like leading 0 now

2012-09-21 Thread David O'Brien
On Fri, Sep 21, 2012 at 07:34:06PM +0200, Jilles Tjoelker wrote:
 On Fri, Sep 21, 2012 at 10:09:02AM -0700, David Wolfskill wrote:
  $ echo $(( ( $( date +%m ) - 1 ) / 3 + 1 ))
  arithmetic expression: expecting ')':  ( 09 - 1 ) / 3 + 1 
...
 This was done to avoid an inconsistency where constants starting with
 0 and containing 8 or 9 were decimal, so something like
 $((018-017)) expanded to 3.

Jilles,
Would it be possible to improve on the error message?
If David had been given the Bash error message, I suspect he would have
figured out the issue right away.

-- 
-- David(obr...@freebsd.org)
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to freebsd-stable-unsubscr...@freebsd.org


Re: tws bug ? (LSI SAS 9750)

2012-09-21 Thread Jim Harris
On Fri, Sep 21, 2012 at 3:11 PM, Mike Tancsa m...@sentex.net wrote:
 On 9/21/2012 4:59 PM, Jim Harris wrote:

snip

 Thanks, that allows it to boot up now!

 pci2: ACPI PCI bus on pcib2
 LSI 3ware device driver for SAS/SATA storage controllers, version:
 10.80.00.003
 tws0: LSI 3ware SAS/SATA Storage Controller port 0x4000-0x40ff mem
 0xc246-0xc2463fff,0xc240-0xc243 irq 17 at device 0.0 on pci2
 tws0: Using MSI
 tws0: Controller details: Model 9750-4i, 8 Phys, Firmware FH9X
 5.12.00.007, BIOS BE9X 5.11.00.006
 em0: Intel(R) PRO/1000 Network Connection 7.3.2 port 0x5040-0x505f mem
 0xc250-0xc251,0xc257-0xc2570fff irq 19 at device 25.0 on pci0
 .
 then a lot of
 .
 (probe65:tws0:0:65:0): INQUIRY. CDB: 12 0 0 0 24 0
 (probe65:tws0:0:65:0): CAM status: Invalid Target ID
 (probe65:tws0:0:65:0): Error 22, Unretryable error
 (probe1:tws0:0:1:0): INQUIRY. CDB: 12 0 0 0 24 0
 (probe1:tws0:0:1:0): CAM status: Invalid Target ID
 (probe1:tws0:0:1:0): Error 22, Unretryable error
 (probe2:tws0:0:2:0): INQUIRY. CDB: 12 0 0 0 24 0
 (probe2:tws0:0:2:0): CAM status: Invalid Target ID
 .
 .
 .
 (probe63:tws0:0:63:0): INQUIRY. CDB: 12 0 0 0 24 0
 (probe63:tws0:0:63:0): CAM status: Invalid Target ID
 (probe63:tws0:0:63:0): Error 22, Unretryable error
 (probe64:tws0:0:64:0): INQUIRY. CDB: 12 0 0 0 24 0
 (probe64:tws0:0:64:0): CAM status: Invalid Target ID
 (probe64:tws0:0:64:0): Error 22, Unretryable error

These can be ignored.  CAM is just telling you that there are no
devices attached at these target IDs.

 da0 at tws0 bus 0 scbus0 target 0 lun 0
 da0: LSI 9750-4iDISK 5.12 Fixed Direct Access SCSI-5 device
 da0: 6000.000MB/s transfers
 da0: 953654MB (1953083392 512 byte sectors: 255H 63S/T 121573C)
 SMP: AP CPU #1 Launched!
 SMP: AP CPU #4 Launched!


snip


 Any thoughts on msi vs no msi ?  Time to run some stress tests.  Its
 certainly a fast little controller for the money!


Typically MSI is preferred to INTx for performance reasons.  I can't
speak for why the original author made INTx the default though.

Regards,

-Jim
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to freebsd-stable-unsubscr...@freebsd.org


Re: tws bug ? (LSI SAS 9750)

2012-09-21 Thread Mike Tancsa
On 9/21/2012 8:03 PM, Jim Harris wrote:
 .
 then a lot of
 .
 (probe65:tws0:0:65:0): INQUIRY. CDB: 12 0 0 0 24 0
 (probe65:tws0:0:65:0): CAM status: Invalid Target ID
 (probe65:tws0:0:65:0): Error 22, Unretryable error
 (probe1:tws0:0:1:0): INQUIRY. CDB: 12 0 0 0 24 0
 (probe1:tws0:0:1:0): CAM status: Invalid Target ID
 (probe1:tws0:0:1:0): Error 22, Unretryable error
 (probe2:tws0:0:2:0): INQUIRY. CDB: 12 0 0 0 24 0
 (probe2:tws0:0:2:0): CAM status: Invalid Target ID
 .
 .
 .
 (probe63:tws0:0:63:0): INQUIRY. CDB: 12 0 0 0 24 0
 (probe63:tws0:0:63:0): CAM status: Invalid Target ID
 (probe63:tws0:0:63:0): Error 22, Unretryable error
 (probe64:tws0:0:64:0): INQUIRY. CDB: 12 0 0 0 24 0
 (probe64:tws0:0:64:0): CAM status: Invalid Target ID
 (probe64:tws0:0:64:0): Error 22, Unretryable error
 
 These can be ignored.  CAM is just telling you that there are no
 devices attached at these target IDs.

What about a change similar to what Alexander Motin did in

http://lists.freebsd.org/pipermail/svn-src-head/2012-June/038196.html


0(ich10)# diff -u tws_cam.c.orig tws_cam.c
--- tws_cam.c.orig  2012-09-21 20:10:43.0 -0400
+++ tws_cam.c   2012-09-21 20:11:11.0 -0400
@@ -532,7 +532,7 @@
 ccb-ccb_h.status |= CAM_LUN_INVALID;
 } else {
 TWS_TRACE_DEBUG(sc, invalid target error,0,0);
-ccb-ccb_h.status |= CAM_TID_INVALID;
+ccb-ccb_h.status |= CAM_SEL_TIMEOUT;
 }

 } else {
1(ich10)#

---Mike


-- 
---
Mike Tancsa, tel +1 519 651 3400
Sentex Communications, m...@sentex.net
Providing Internet services since 1994 www.sentex.net
Cambridge, Ontario Canada   http://www.tancsa.com/
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to freebsd-stable-unsubscr...@freebsd.org


[releng_8 tinderbox] failure on mips/mips

2012-09-21 Thread FreeBSD Tinderbox
TB --- 2012-09-22 00:53:58 - tinderbox 2.9 running on freebsd-legacy2.sentex.ca
TB --- 2012-09-22 00:53:58 - FreeBSD freebsd-legacy2.sentex.ca 9.0-RELEASE 
FreeBSD 9.0-RELEASE #0: Tue Jan  3 07:46:30 UTC 2012 
r...@farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  amd64
TB --- 2012-09-22 00:53:58 - starting RELENG_8 tinderbox run for mips/mips
TB --- 2012-09-22 00:53:58 - cleaning the object tree
TB --- 2012-09-22 00:53:58 - checking out /src from 
svn://svn.freebsd.org/base/stable/8
TB --- 2012-09-22 00:53:58 - cd /tinderbox/RELENG_8/mips/mips
TB --- 2012-09-22 00:53:58 - /usr/local/bin/svn cleanup /src
TB --- 2012-09-22 00:54:08 - /usr/local/bin/svn update /src
At revision 240796.
TB --- 2012-09-22 00:54:18 - building world
TB --- 2012-09-22 00:54:18 - CROSS_BUILD_TESTING=YES
TB --- 2012-09-22 00:54:18 - MAKEOBJDIRPREFIX=/obj
TB --- 2012-09-22 00:54:18 - PATH=/usr/bin:/usr/sbin:/bin:/sbin
TB --- 2012-09-22 00:54:18 - SRCCONF=/dev/null
TB --- 2012-09-22 00:54:18 - TARGET=mips
TB --- 2012-09-22 00:54:18 - TARGET_ARCH=mips
TB --- 2012-09-22 00:54:18 - TZ=UTC
TB --- 2012-09-22 00:54:18 - __MAKE_CONF=/dev/null
TB --- 2012-09-22 00:54:18 - cd /src
TB --- 2012-09-22 00:54:18 - /usr/bin/make -B buildworld
 World build started on Sat Sep 22 00:54:18 UTC 2012
 Rebuilding the temporary build tree
 stage 1.1: legacy release compatibility shims
 stage 1.2: bootstrap tools
[...]
cc -O2 -pipe   -I/obj/mips/src/tmp/legacy/usr/include -c 
/src/games/fortune/strfile/strfile.c
cc -O2 -pipe   -I/obj/mips/src/tmp/legacy/usr/include  -static 
-L/obj/mips/src/tmp/legacy/usr/lib -o strfile strfile.o -legacy
sh /src/tools/install.sh -s -o root -g wheel -m 555   strfile 
/obj/mips/src/tmp/legacy/usr/games
=== gnu/usr.bin/gperf (obj,depend,all,install)
/obj/mips/src/tmp/src/gnu/usr.bin/gperf created for /src/gnu/usr.bin/gperf
=== gnu/usr.bin/gperf/doc (obj)
/obj/mips/src/tmp/src/gnu/usr.bin/gperf/doc created for 
/src/gnu/usr.bin/gperf/doc
make: don't know how to make iterator.cc. Stop
*** Error code 2

Stop in /src.
*** Error code 1

Stop in /src.
*** Error code 1

Stop in /src.
TB --- 2012-09-22 00:54:30 - WARNING: /usr/bin/make returned exit code  1 
TB --- 2012-09-22 00:54:30 - ERROR: failed to build world
TB --- 2012-09-22 00:54:30 - 12.22 user 7.25 system 32.17 real


http://tinderbox.freebsd.org/tinderbox-releng_8-RELENG_8-mips-mips.full
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to freebsd-stable-unsubscr...@freebsd.org


Re: tws bug ? (LSI SAS 9750)

2012-09-21 Thread Jim Harris
On Fri, Sep 21, 2012 at 5:37 PM, Mike Tancsa m...@sentex.net wrote:
 On 9/21/2012 8:03 PM, Jim Harris wrote:
 .
 then a lot of
 .
 (probe65:tws0:0:65:0): INQUIRY. CDB: 12 0 0 0 24 0
 (probe65:tws0:0:65:0): CAM status: Invalid Target ID
 (probe65:tws0:0:65:0): Error 22, Unretryable error
 (probe1:tws0:0:1:0): INQUIRY. CDB: 12 0 0 0 24 0
 (probe1:tws0:0:1:0): CAM status: Invalid Target ID
 (probe1:tws0:0:1:0): Error 22, Unretryable error
 (probe2:tws0:0:2:0): INQUIRY. CDB: 12 0 0 0 24 0
 (probe2:tws0:0:2:0): CAM status: Invalid Target ID
 .
 .
 .
 (probe63:tws0:0:63:0): INQUIRY. CDB: 12 0 0 0 24 0
 (probe63:tws0:0:63:0): CAM status: Invalid Target ID
 (probe63:tws0:0:63:0): Error 22, Unretryable error
 (probe64:tws0:0:64:0): INQUIRY. CDB: 12 0 0 0 24 0
 (probe64:tws0:0:64:0): CAM status: Invalid Target ID
 (probe64:tws0:0:64:0): Error 22, Unretryable error

 These can be ignored.  CAM is just telling you that there are no
 devices attached at these target IDs.

 What about a change similar to what Alexander Motin did in

 http://lists.freebsd.org/pipermail/svn-src-head/2012-June/038196.html

Ah, yes.  I was thinking you had CAM_DEBUG enabled which is why you
were seeing this spew - but that's not the case.  This indeed should
be fixed and not just ignored.

Seeing the attributions on Alexander's commit, you certainly seem to
have a monopoly on controllers that exhibit this problem on FreeBSD.
:)

I believe the CAM_LUN_INVALID here should be fixed as well, similar to
the twa commit.  If you send me a revised patch I will commit it.

Thanks,

-Jim



 0(ich10)# diff -u tws_cam.c.orig tws_cam.c
 --- tws_cam.c.orig  2012-09-21 20:10:43.0 -0400
 +++ tws_cam.c   2012-09-21 20:11:11.0 -0400
 @@ -532,7 +532,7 @@
  ccb-ccb_h.status |= CAM_LUN_INVALID;
  } else {
  TWS_TRACE_DEBUG(sc, invalid target error,0,0);
 -ccb-ccb_h.status |= CAM_TID_INVALID;
 +ccb-ccb_h.status |= CAM_SEL_TIMEOUT;
  }

  } else {
 1(ich10)#

 ---Mike


 --
 ---
 Mike Tancsa, tel +1 519 651 3400
 Sentex Communications, m...@sentex.net
 Providing Internet services since 1994 www.sentex.net
 Cambridge, Ontario Canada   http://www.tancsa.com/
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to freebsd-stable-unsubscr...@freebsd.org


[releng_8 tinderbox] failure on i386/i386

2012-09-21 Thread FreeBSD Tinderbox
TB --- 2012-09-22 04:47:11 - tinderbox 2.9 running on freebsd-legacy2.sentex.ca
TB --- 2012-09-22 04:47:11 - FreeBSD freebsd-legacy2.sentex.ca 9.0-RELEASE 
FreeBSD 9.0-RELEASE #0: Tue Jan  3 07:46:30 UTC 2012 
r...@farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  amd64
TB --- 2012-09-22 04:47:11 - starting RELENG_8 tinderbox run for i386/i386
TB --- 2012-09-22 04:47:11 - cleaning the object tree
TB --- 2012-09-22 04:47:11 - checking out /src from 
svn://svn.freebsd.org/base/stable/8
TB --- 2012-09-22 04:47:11 - cd /tinderbox/RELENG_8/i386/i386
TB --- 2012-09-22 04:47:11 - /usr/local/bin/svn cleanup /src
TB --- 2012-09-22 04:47:21 - /usr/local/bin/svn update /src
TB --- 2012-09-22 04:52:01 - WARNING: /usr/local/bin/svn returned exit code  1 
TB --- 2012-09-22 04:52:01 - ERROR: unable to check out the source tree
TB --- 2012-09-22 04:52:01 - 2.46 user 4.66 system 289.30 real


http://tinderbox.freebsd.org/tinderbox-releng_8-RELENG_8-i386-i386.full
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to freebsd-stable-unsubscr...@freebsd.org


[releng_8 tinderbox] failure on amd64/amd64

2012-09-21 Thread FreeBSD Tinderbox
TB --- 2012-09-22 04:47:11 - tinderbox 2.9 running on freebsd-legacy2.sentex.ca
TB --- 2012-09-22 04:47:11 - FreeBSD freebsd-legacy2.sentex.ca 9.0-RELEASE 
FreeBSD 9.0-RELEASE #0: Tue Jan  3 07:46:30 UTC 2012 
r...@farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  amd64
TB --- 2012-09-22 04:47:11 - starting RELENG_8 tinderbox run for amd64/amd64
TB --- 2012-09-22 04:47:11 - cleaning the object tree
TB --- 2012-09-22 04:47:11 - checking out /src from 
svn://svn.freebsd.org/base/stable/8
TB --- 2012-09-22 04:47:11 - cd /tinderbox/RELENG_8/amd64/amd64
TB --- 2012-09-22 04:47:11 - /usr/local/bin/svn cleanup /src
TB --- 2012-09-22 04:47:21 - /usr/local/bin/svn update /src
TB --- 2012-09-22 04:53:10 - WARNING: /usr/local/bin/svn returned exit code  1 
TB --- 2012-09-22 04:53:10 - ERROR: unable to check out the source tree
TB --- 2012-09-22 04:53:10 - 2.23 user 4.96 system 358.30 real


http://tinderbox.freebsd.org/tinderbox-releng_8-RELENG_8-amd64-amd64.full
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to freebsd-stable-unsubscr...@freebsd.org


[releng_8 tinderbox] failure on arm/arm

2012-09-21 Thread FreeBSD Tinderbox
TB --- 2012-09-22 04:47:11 - tinderbox 2.9 running on freebsd-legacy2.sentex.ca
TB --- 2012-09-22 04:47:11 - FreeBSD freebsd-legacy2.sentex.ca 9.0-RELEASE 
FreeBSD 9.0-RELEASE #0: Tue Jan  3 07:46:30 UTC 2012 
r...@farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  amd64
TB --- 2012-09-22 04:47:11 - starting RELENG_8 tinderbox run for arm/arm
TB --- 2012-09-22 04:47:11 - cleaning the object tree
TB --- 2012-09-22 04:47:11 - checking out /src from 
svn://svn.freebsd.org/base/stable/8
TB --- 2012-09-22 04:47:11 - cd /tinderbox/RELENG_8/arm/arm
TB --- 2012-09-22 04:47:11 - /usr/local/bin/svn cleanup /src
TB --- 2012-09-22 04:47:21 - /usr/local/bin/svn update /src
TB --- 2012-09-22 04:53:11 - WARNING: /usr/local/bin/svn returned exit code  1 
TB --- 2012-09-22 04:53:11 - ERROR: unable to check out the source tree
TB --- 2012-09-22 04:53:11 - 2.14 user 5.06 system 359.30 real


http://tinderbox.freebsd.org/tinderbox-releng_8-RELENG_8-arm-arm.full
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to freebsd-stable-unsubscr...@freebsd.org


[releng_8 tinderbox] failure on ia64/ia64

2012-09-21 Thread FreeBSD Tinderbox
TB --- 2012-09-22 04:47:11 - tinderbox 2.9 running on freebsd-legacy2.sentex.ca
TB --- 2012-09-22 04:47:11 - FreeBSD freebsd-legacy2.sentex.ca 9.0-RELEASE 
FreeBSD 9.0-RELEASE #0: Tue Jan  3 07:46:30 UTC 2012 
r...@farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  amd64
TB --- 2012-09-22 04:47:11 - starting RELENG_8 tinderbox run for ia64/ia64
TB --- 2012-09-22 04:47:11 - cleaning the object tree
TB --- 2012-09-22 04:47:11 - checking out /src from 
svn://svn.freebsd.org/base/stable/8
TB --- 2012-09-22 04:47:11 - cd /tinderbox/RELENG_8/ia64/ia64
TB --- 2012-09-22 04:47:11 - /usr/local/bin/svn cleanup /src
TB --- 2012-09-22 04:47:21 - /usr/local/bin/svn update /src
TB --- 2012-09-22 04:53:11 - WARNING: /usr/local/bin/svn returned exit code  1 
TB --- 2012-09-22 04:53:11 - ERROR: unable to check out the source tree
TB --- 2012-09-22 04:53:11 - 2.28 user 4.95 system 359.30 real


http://tinderbox.freebsd.org/tinderbox-releng_8-RELENG_8-ia64-ia64.full
___
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to freebsd-stable-unsubscr...@freebsd.org