latest 8.1 hangs on xpt_config
It seems that the latest changes (last 7 days) introduced this problem: ... run_interrupt_driven_hooks: still waiting after 60 seconds for xpt_config run_interrupt_driven_hooks: still waiting after 120 seconds for xpt_config run_interrupt_driven_hooks: still waiting after 180 seconds for xpt_config run_interrupt_driven_hooks: still waiting after 240 seconds for xpt_config ... i'll try to hunt this down, but any help is welcome. danny ___ 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: latest 8.1 hangs on xpt_config
On Fri, Jul 23, 2010 at 09:35:55AM +0300, Daniel Braniss wrote: It seems that the latest changes (last 7 days) introduced this problem: ... run_interrupt_driven_hooks: still waiting after 60 seconds for xpt_config run_interrupt_driven_hooks: still waiting after 120 seconds for xpt_config run_interrupt_driven_hooks: still waiting after 180 seconds for xpt_config run_interrupt_driven_hooks: still waiting after 240 seconds for xpt_config ... i'll try to hunt this down, but any help is welcome. Recent to semi-recent commits relevant to xpt that I can find The problem might not be even in xpt though. Which xpt piece pertains to you probably depends on your system setup/configuration. Dates/times are in PDT/UTC-0700: -rw-r--r--1 root wheel 6037 1 Mar 22:48 /usr/src/sys/cam/cam_xpt_internal.h -rw-r--r--1 root wheel 124773 9 May 10:19 /usr/src/sys/cam/cam_xpt.c -rw-r--r--1 root wheel 72556 23 May 10:41 /usr/src/sys/cam/scsi/scsi_xpt.c -rw-r--r--1 root wheel 56663 19 Jul 05:28 /usr/src/sys/cam/ata/ata_xpt.c http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/cam_xpt_internal.h http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/cam_xpt.c http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/scsi/scsi_xpt.c http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/ata/ata_xpt.c -- | Jeremy Chadwick j...@parodius.com | | Parodius Networking http://www.parodius.com/ | | UNIX Systems Administrator Mountain View, CA, USA | | Making life hard for others since 1977. PGP: 4BD6C0CB | ___ 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: latest 8.1 hangs on xpt_config
On Fri, Jul 23, 2010 at 09:35:55AM +0300, Daniel Braniss wrote: It seems that the latest changes (last 7 days) introduced this problem: ... run_interrupt_driven_hooks: still waiting after 60 seconds for xpt_config run_interrupt_driven_hooks: still waiting after 120 seconds for xpt_config run_interrupt_driven_hooks: still waiting after 180 seconds for xpt_config run_interrupt_driven_hooks: still waiting after 240 seconds for xpt_config ... i'll try to hunt this down, but any help is welcome. Recent to semi-recent commits relevant to xpt that I can find The problem might not be even in xpt though. Which xpt piece pertains to you probably depends on your system setup/configuration. Dates/times are in PDT/UTC-0700: -rw-r--r--1 root wheel 6037 1 Mar 22:48 /usr/src/sys/cam/cam_xpt_internal.h -rw-r--r--1 root wheel 124773 9 May 10:19 /usr/src/sys/cam/cam_xpt.c -rw-r--r--1 root wheel 72556 23 May 10:41 /usr/src/sys/cam/scsi/scsi_xpt.c -rw-r--r--1 root wheel 56663 19 Jul 05:28 /usr/src/sys/cam/ata/ata_xpt.c http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/cam_xpt_internal.h http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/cam_xpt.c http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/scsi/scsi_xpt.c http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/ata/ata_xpt.c thanks Jeremy, i'll try and make some sence of the changes. here is some more info: there are one disk and one dvd connected via SATA CPU: Intel(R) Core(TM) i5 CPU 660 @ 3.33GHz (3325.02-MHz K8-class CPU)^M Origin = GenuineIntel Id = 0x20652 Family = 6 Model = 25 Stepping = 2^M Features=0xbfebfbffFPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE^M Features2=0x298e3ffSSE3,PCLMULQDQ,DTES64,MON,DS_CPL,VMX,SMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,SSE4.1,SSE4.2,POPCNT,AESNI^M AMD Features=0x28100800SYSCALL,NX,RDTSCP,LM^M AMD Features2=0x1LAHF^M ... atapci0: Intel ATA controller port 0xf0f0-0xf0f7,0xf0e0-0xf0e3,0xf0d0-0xf0d7,0xf0c0-0xf0c3,0xf0b0-0xf0bf irq 18 at device 22.2 on pci0^M atapci0: Reserved 0x10 bytes for rid 0x20 type 4 at 0xf0b0^M ioapic0: routing intpin 18 (PCI IRQ 18) to lapic 0 vector 49^M atapci0: [MPSAFE]^M atapci0: [ITHREAD]^M ata2: ATA channel 0 on atapci0^M atapci0: Reserved 0x8 bytes for rid 0x10 type 4 at 0xf0f0^M atapci0: Reserved 0x4 bytes for rid 0x14 type 4 at 0xf0e0^M ata2: reset tp1 mask=03 ostat0=7f ostat1=7f^M ata2: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata2: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata2: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata2: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata2: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata2: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata2: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata2: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata2: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata2: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata2: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata2: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata2: stat1=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata2: reset tp2 stat0=ff stat1=ff devices=0x0^M ata2: [MPSAFE]^M ata2: [ITHREAD]^M ata3: ATA channel 1 on atapci0^M atapci0: Reserved 0x8 bytes for rid 0x18 type 4 at 0xf0d0^M atapci0: Reserved 0x4 bytes for rid 0x1c type 4 at 0xf0c0^M ata3: reset tp1 mask=03 ostat0=7f ostat1=7f^M ata3: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata3: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata3: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata3: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata3: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata3: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata3: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata3: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata3: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata3: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata3: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata3: stat0=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata3: stat1=0x7f err=0x7f lsb=0x7f msb=0x7f^M ata3: reset tp2 stat0=ff stat1=ff devices=0x0^M ata3: [MPSAFE]^M ata3: [ITHREAD]^M ... ahci0: Intel PCH AHCI SATA controller port 0xf090-0xf097,0xf080-0xf083,0xf070-0xf077,0xf060-0xf063,0xf020-0xf03f mem 0xfe425000-0xfe4257ff irq 19 at device 31.2 on pci0^M ahci0: Reserved 0x800 bytes for rid 0x24 type 3 at 0xfe425000^M ahci0: attempting to allocate 1 MSI vectors (1 supported)^M msi: routing MSI IRQ 257 to local APIC 0 vector 53^M ahci0: using IRQ 257 for MSI^M ahci0: [MPSAFE]^M ahci0: [ITHREAD]^M ahci0: AHCI v1.30 with 6 3Gbps ports, Port Multiplier not supported^M ahci0: Caps: 64bit NCQ SNTF MPS ALP AL CLO 3Gbps PMD SSC PSC 32cmd EM eSATA 6ports^M ahci0: Caps2: APST^M ahci0: EM Caps: ALHD XMT SMB LED^M ahcich0: AHCI channel at channel 0 on ahci0^M ahcich0: [MPSAFE]^M ahcich0: [ITHREAD]^M ahcich0: Caps:^M ahcich1: AHCI channel at channel 1 on ahci0^M ahcich1: [MPSAFE]^M ahcich1: [ITHREAD]^M ahcich1: Caps:^M ahcich2: AHCI channel at channel 4 on ahci0^M ahcich2:
Re: latest 8.1 hangs on xpt_config
Daniel Braniss wrote: On Fri, Jul 23, 2010 at 09:35:55AM +0300, Daniel Braniss wrote: It seems that the latest changes (last 7 days) introduced this problem: ... run_interrupt_driven_hooks: still waiting after 60 seconds for xpt_config run_interrupt_driven_hooks: still waiting after 120 seconds for xpt_config run_interrupt_driven_hooks: still waiting after 180 seconds for xpt_config run_interrupt_driven_hooks: still waiting after 240 seconds for xpt_config ... i'll try to hunt this down, but any help is welcome. Recent to semi-recent commits relevant to xpt that I can find The problem might not be even in xpt though. Which xpt piece pertains to you probably depends on your system setup/configuration. Dates/times are in PDT/UTC-0700: -rw-r--r--1 root wheel 6037 1 Mar 22:48 /usr/src/sys/cam/cam_xpt_internal.h -rw-r--r--1 root wheel 124773 9 May 10:19 /usr/src/sys/cam/cam_xpt.c -rw-r--r--1 root wheel 72556 23 May 10:41 /usr/src/sys/cam/scsi/scsi_xpt.c -rw-r--r--1 root wheel 56663 19 Jul 05:28 /usr/src/sys/cam/ata/ata_xpt.c http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/cam_xpt_internal.h http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/cam_xpt.c http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/scsi/scsi_xpt.c http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/ata/ata_xpt.c thanks Jeremy, i'll try and make some sence of the changes. here is some more info: there are one disk and one dvd connected via SATA I recently had report about alike problem with PIONEER DVD-RW DVR-215 1.19 drive. Don't you have the same device or another Pioneer? In that case this patch: http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/ata/ata_xpt.c.diff?r1=1.3.2.29;r2=1.3.2.30;f=h allowed system to boot, though problem seemed to be hardware. Try this patch, it at least may give additional info about the problem. -- Alexander Motin ___ 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
WITNESS is the culprit was Re: latest 8.1 hangs on xpt_config
Daniel Braniss wrote: On Fri, Jul 23, 2010 at 09:35:55AM +0300, Daniel Braniss wrote: It seems that the latest changes (last 7 days) introduced this problem: ... run_interrupt_driven_hooks: still waiting after 60 seconds for xpt_config run_interrupt_driven_hooks: still waiting after 120 seconds for xpt_config run_interrupt_driven_hooks: still waiting after 180 seconds for xpt_config run_interrupt_driven_hooks: still waiting after 240 seconds for xpt_config ... i'll try to hunt this down, but any help is welcome. Recent to semi-recent commits relevant to xpt that I can find The problem might not be even in xpt though. Which xpt piece pertains to you probably depends on your system setup/configuration. Dates/times are in PDT/UTC-0700: -rw-r--r--1 root wheel 6037 1 Mar 22:48 /usr/src/sys/cam/cam_xpt_internal.h -rw-r--r--1 root wheel 124773 9 May 10:19 /usr/src/sys/cam/cam_xpt.c -rw-r--r--1 root wheel 72556 23 May 10:41 /usr/src/sys/cam/scsi/scsi_xpt.c -rw-r--r--1 root wheel 56663 19 Jul 05:28 /usr/src/sys/cam/ata/ata_xpt.c http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/cam_xpt_internal.h http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/cam_xpt.c http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/scsi/scsi_xpt.c http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/ata/ata_xpt.c thanks Jeremy, i'll try and make some sence of the changes. here is some more info: there are one disk and one dvd connected via SATA I recently had report about alike problem with PIONEER DVD-RW DVR-215 1.19 drive. Don't you have the same device or another Pioneer? In that case this patch: http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/ata/ata_xpt.c.diff?r1=1.3.2.29;r2=1.3.2.30;f=h allowed system to boot, though problem seemed to be hardware. Try this patch, it at least may give additional info about the problem. That was my first guess, so I detached the DVD, but the problem persisted. the device is: ATAPI DVD A DH16AAS JL34 Removable CD-ROM SCSI-0 device anyways, I compiled a kernel without WITNESS, and it now works ok! thanks all, danny ___ 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: WITNESS is the culprit was Re: latest 8.1 hangs on xpt_config
Daniel Braniss wrote: Daniel Braniss wrote: On Fri, Jul 23, 2010 at 09:35:55AM +0300, Daniel Braniss wrote: It seems that the latest changes (last 7 days) introduced this problem: ... run_interrupt_driven_hooks: still waiting after 60 seconds for xpt_config run_interrupt_driven_hooks: still waiting after 120 seconds for xpt_config run_interrupt_driven_hooks: still waiting after 180 seconds for xpt_config run_interrupt_driven_hooks: still waiting after 240 seconds for xpt_config ... i'll try to hunt this down, but any help is welcome. Recent to semi-recent commits relevant to xpt that I can find The problem might not be even in xpt though. Which xpt piece pertains to you probably depends on your system setup/configuration. Dates/times are in PDT/UTC-0700: -rw-r--r--1 root wheel 6037 1 Mar 22:48 /usr/src/sys/cam/cam_xpt_internal.h -rw-r--r--1 root wheel 124773 9 May 10:19 /usr/src/sys/cam/cam_xpt.c -rw-r--r--1 root wheel 72556 23 May 10:41 /usr/src/sys/cam/scsi/scsi_xpt.c -rw-r--r--1 root wheel 56663 19 Jul 05:28 /usr/src/sys/cam/ata/ata_xpt.c http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/cam_xpt_internal.h http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/cam_xpt.c http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/scsi/scsi_xpt.c http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/ata/ata_xpt.c thanks Jeremy, i'll try and make some sence of the changes. here is some more info: there are one disk and one dvd connected via SATA I recently had report about alike problem with PIONEER DVD-RW DVR-215 1.19 drive. Don't you have the same device or another Pioneer? In that case this patch: http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/cam/ata/ata_xpt.c.diff?r1=1.3.2.29;r2=1.3.2.30;f=h allowed system to boot, though problem seemed to be hardware. Try this patch, it at least may give additional info about the problem. That was my first guess, so I detached the DVD, but the problem persisted. the device is: ATAPI DVD A DH16AAS JL34 Removable CD-ROM SCSI-0 device anyways, I compiled a kernel without WITNESS, and it now works ok! That's hardly a solution or reason. Still please try the patch (or fresh 8-STABLE with it), may be it tell more. -- Alexander Motin ___ 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: WITNESS is the culprit was Re: latest 8.1 hangs on xpt_config
That's hardly a solution or reason. of course it's not, just that last successful boot had WITNESS configured, and with the latest patches it hang, compiling without WITNESS allowed the boot to proceed. Still please try the patch (or fresh 8-STABLE with it), may be it tell more. according to my logs (i do some hulahups sync'ing via svn/hg which makes it abit of a problem following versions :-) your patch seems to be all ready in my kernel: hg log ata_xpt.c -p changeset: 2939:440362ab79cb branch: 8 tag: tip parent: 2938:fc1c9d5f4b38 parent: 2937:846cb2242d34 user:da...@cs.huji.ac.il date:Fri Jul 23 08:41:24 2010 +0300 summary: -- merge from head -- diff -r fc1c9d5f4b38 -r 440362ab79cb sys/cam/ata/ata_xpt.c --- a/sys/cam/ata/ata_xpt.c Fri Jul 23 08:40:46 2010 +0300 +++ b/sys/cam/ata/ata_xpt.c Fri Jul 23 08:41:24 2010 +0300 @@ -134,6 +134,7 @@ uint32_tpm_prv; int restart; int spinup; + int faults; u_int caps; struct cam_periph *periph; } probe_softc; @@ -738,14 +739,28 @@ ident_buf = path-device-ident_data; if ((done_ccb-ccb_h.status CAM_STATUS_MASK) != CAM_REQ_CMP) { -device_fail: if ((!softc-restart) - cam_periph_error(done_ccb, 0, 0, NULL) == ERESTART) { + if (softc-restart) { + if (bootverbose) { + cam_error_print(done_ccb, + CAM_ESF_ALL, CAM_EPF_ALL); + } + } else if (cam_periph_error(done_ccb, 0, 0, NULL) == ERESTART) return; - } else if ((done_ccb-ccb_h.status CAM_DEV_QFRZN) != 0) { + if ((done_ccb-ccb_h.status CAM_DEV_QFRZN) != 0) { /* Don't wedge the queue */ xpt_release_devq(done_ccb-ccb_h.path, /*count*/1, /*run_queue*/TRUE); } + if (softc-restart) { + softc-faults++; + if ((done_ccb-ccb_h.status CAM_STATUS_MASK) == + CAM_CMD_TIMEOUT) + softc-faults += 4; + if (softc-faults 10) + goto done; + else + softc-restart = 0; + } else /* Old PIO2 devices may not support mode setting. */ if (softc-action == PROBE_SETMODE ata_max_pmode(ident_buf) = ATA_PIO2 @@ -761,7 +776,7 @@ * already marked unconfigured, notify the peripheral * drivers that this device is no more. */ - if ((path-device-flags CAM_DEV_UNCONFIGURED) == 0) +device_fail: if ((path-device-flags CAM_DEV_UNCONFIGURED) == 0) xpt_async(AC_LOST_DEVICE, path, NULL); found = 0; goto done; @@ -1209,6 +1224,12 @@ !(work_ccb-cpi.hba_misc PIM_NOBUSRESET) !timevalisset(request_ccb-ccb_h.path-bus-last_reset)) { reset_ccb = xpt_alloc_ccb_nowait(); + if (reset_ccb == NULL) { + request_ccb-ccb_h.status = CAM_RESRC_UNAVAIL; + xpt_free_ccb(work_ccb); + xpt_done(request_ccb); + return; + } xpt_setup_ccb(reset_ccb-ccb_h, request_ccb- ccb_h.path, CAM_PRIORITY_NONE); reset_ccb-ccb_h.func_code = XPT_RESET_BUS; @@ -1228,6 +1249,7 @@ malloc(sizeof(ata_scan_bus_info), M_CAMXPT, M_NOWAIT); if (scan_info == NULL) { request_ccb-ccb_h.status = CAM_RESRC_UNAVAIL; + xpt_free_ccb(work_ccb); xpt_done(request_ccb); return; } cheers, danny ___ 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
900.tcpwrap and stale log messages
Hiya Early this morning I read through the daily status e-mails from a server I administer. I was unpleasantly surprised to see a refused ssh connection from an external IP address, which shouldn't be possible since the machine is only accessible via a VPN :-O It wasn't until after I'd spoken to the network admin I realised what the problem was - /var/log/messages contained log messages that spanned back into 2009 (the machine is only used for SVN access so isn't very busy), and 900.tcpwrap had taken entries from both July 22 2010 (yesterday) and July 22nd 2009, when the machine was on a different network... :-( How. Embarrassing. It isn't really 900.tcpwrap's fault as the log messages only record the month, date and time, but is there any reason why the year isn't recorded in the log too? I realise this issue isn't likely to come up often, but it should be fairly easy to prevent. Cheers, --Jon ___ 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
Floppy driver broken on 8.1-PRERELEASE?
Hi guys, can please someone explain what the heck this is good for? $ uname -a FreeBSD unicorn.tsht.lan 8.1-PRERELEASE FreeBSD 8.1-PRERELEASE #9: Wed Jul 7 15:31:25 CEST 2010 r...@unicorn.tsht.lan:/data/FreeBSD/obj/data/FreeBSD/src/sys/UNICORN i386 $ fdformat /dev/fd0 Format 1440K floppy `/dev/fd0'? (y/n): y Processing done. $ dd if=/dev/fd0 of=/dev/null bs=1440k dd: /dev/fd0: Input/output error 0+0 records in 0+0 records out 0 bytes transferred in 1.119664 secs (0 bytes/sec) $ dd if=/dev/fd0 of=/dev/null bs=18k 80+0 records in 80+0 records out 1474560 bytes transferred in 47.954204 secs (30749 bytes/sec) $ mformat -s18 -h2 -t80 a: $ mcopy cool111.exe a: plain_io: Input/output error buffer_flush: write: Input/output error write in copy: Input/output error plain_io: Input/output error buffer_flush: write: Input/output error plain_io: Input/output error buffer_flush: write: Input/output error plain_io: Input/output error buffer_flush: write: Input/output error plain_io: Input/output error buffer_flush: write: Input/output error plain_io: Input/output error buffer_flush: write: Input/output error $ mdir a: Volume in drive A has no label Volume Serial Number is 070F-B873 Directory for A:/ cool111 exe131072 2010-07-23 12:12 cool111.exe 1 file 131 072 bytes 1 195 520 bytes free $ ls -l cool111.exe -rw-r--r-- 1 holm holm 623235 Jul 20 21:09 cool111.exe $ ...and no, this is not abroken floppy, tried several of them already. Why I can't read 1440K blocks from the floppy anymore? dmesg.boot: Copyright (c) 1992-2010 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD is a registered trademark of The FreeBSD Foundation. FreeBSD 8.1-PRERELEASE #9: Wed Jul 7 15:31:25 CEST 2010 r...@unicorn.tsht.lan:/data/FreeBSD/obj/data/FreeBSD/src/sys/UNICORN i386 Timecounter i8254 frequency 1193182 Hz quality 0 CPU: AMD Athlon(tm) XP 3000+ (2109.49-MHz 686-class CPU) Origin = AuthenticAMD Id = 0x6a0 Family = 6 Model = a Stepping = 0 Features=0x383fbffFPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,SSE AMD Features=0xc0400800SYSCALL,MMX+,3DNow!+,3DNow! real memory = 2147483648 (2048 MB) avail memory = 2092113920 (1995 MB) kbd1 at kbdmux0 acpi0: GBT AWRDACPI on motherboard acpi0: [ITHREAD] acpi0: Power Button (fixed) acpi0: reservation of 0, a (3) failed acpi0: reservation of 10, 7fef (3) failed cpu0: ACPI CPU on acpi0 acpi_button0: Power Button on acpi0 pcib0: ACPI Host-PCI bridge port 0xcf8-0xcff on acpi0 pci0: ACPI PCI bus on pcib0 agp0: VIA 8377 (Apollo KT400/KT400A/KT600) host to PCI bridge on hostb0 agp0: aperture size is 128M pcib1: PCI-PCI bridge at device 1.0 on pci0 pci1: PCI bus on pcib1 vgapci0: VGA-compatible display port 0x9000-0x90ff mem 0xd800-0xdfff,0xe900-0xe900 irq 15 at device 0.0 on pci1 drm0: ATI Radeon RV280 9250 on vgapci0 vgapci0: child drm0 requested pci_enable_busmaster info: [drm] AGP at 0xd000 128MB info: [drm] Initialized radeon 1.31.0 20080613 vgapci1: VGA-compatible display mem 0xe000-0xe7ff,0xe901-0xe901 at device 0.1 on pci1 de0: Digital 21040 Ethernet port 0xa000-0xa07f mem 0xeb003000-0xeb00307f irq 15 at device 9.0 on pci0 de0: Cogent 21040 [10Mb/s] pass 2.3 de0: WARNING: using obsoleted if_watchdog interface de0: Ethernet address: 00:00:92:90:09:8d de0: [ITHREAD] puc0: Oxford Semiconductor OX16PCI952 UARTs port 0xa400-0xa407,0xa800-0xa807,0xac00-0xac1f mem 0xeb00-0xeb000fff,0xeb001000-0xeb001fff irq 5 at device 10.0 on pci0 puc0: [FILTER] uart2: 16550 or compatible on puc0 uart2: [FILTER] uart3: 16550 or compatible on puc0 uart3: [FILTER] ahc0: Adaptec 29160 Ultra160 SCSI adapter port 0xb000-0xb0ff mem 0xeb002000-0xeb002fff irq 11 at device 11.0 on pci0 ahc0: [ITHREAD] aic7892: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs amd0: Tekram DC390(T)/AMD53c974 SCSI Host Adapter port 0xb400-0xb47f irq 15 at device 13.0 on pci0 amd0: [GIANT-LOCKED] amd0: [ITHREAD] uhci0: VIA 83C572 USB controller port 0xb800-0xb81f irq 15 at device 16.0 on pci0 uhci0: [ITHREAD] usbus0: VIA 83C572 USB controller on uhci0 uhci1: VIA 83C572 USB controller port 0xbc00-0xbc1f irq 15 at device 16.1 on pci0 uhci1: [ITHREAD] usbus1: VIA 83C572 USB controller on uhci1 uhci2: VIA 83C572 USB controller port 0xc000-0xc01f irq 5 at device 16.2 on pci0 uhci2: [ITHREAD] usbus2: VIA 83C572 USB controller on uhci2 ehci0: VIA VT6202 USB 2.0 controller mem 0xeb004000-0xeb0040ff irq 11 at device 16.3 on pci0 ehci0: [ITHREAD] usbus3: EHCI version 1.0 usbus3: VIA VT6202 USB 2.0 controller on ehci0 isab0: PCI-ISA bridge at device 17.0 on pci0 isa0: ISA bus on isab0 atapci0: VIA 8235 UDMA133 controller port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xc400-0xc40f at device 17.1 on pci0 ata0: ATA channel 0 on atapci0 ata0:
Re: 900.tcpwrap and stale log messages
On Fri, Jul 23, 2010 at 11:48:16AM +0100, Jonathan Belson wrote: Early this morning I read through the daily status e-mails from a server I administer. I was unpleasantly surprised to see a refused ssh connection from an external IP address, which shouldn't be possible since the machine is only accessible via a VPN :-O It wasn't until after I'd spoken to the network admin I realised what the problem was - /var/log/messages contained log messages that spanned back into 2009 (the machine is only used for SVN access so isn't very busy), and 900.tcpwrap had taken entries from both July 22 2010 (yesterday) and July 22nd 2009, when the machine was on a different network... :-( How. Embarrassing. It isn't really 900.tcpwrap's fault as the log messages only record the month, date and time, but is there any reason why the year isn't recorded in the log too? I realise this issue isn't likely to come up often, but it should be fairly easy to prevent. You've opened a big can of worms. Congratulations. :-) The crux of the problem is that syslog doesn't log the year. Thus, /var/log/messages and /var/log/messages.*.{gz,bz2} only contain entries that contain month and day, as I'm sure you've noticed. /etc/periodic/security/900.tcpwrap explicitly goes looking for lines in /var/log/messages and /var/log/messages.*.{gz,bz2} that contain a string matching output from: date -v-1d +%b %e You can't solve this problem by rotating your /var/log/messages file, for example, on a daily basis, because the script explicitly looks at /var/log/messages and /var/log/messages.*.{gz,bz2}. The only solution, as I see it, is to do all of these things: 1a) Change /etc/newsyslog.conf to rotate your /var/log/messages file on a daily basis, rather than based on size. 1b) The rotation should happen sometime *after* 900.tcpwrap runs (it's a daily script, so that means it runs at 03:01 every day local time). 2a) Change 900.tcpwrap to only look at /var/log/messages and not /var/log/messages.*.{gz,bz2}. 2b) Since changing things in /etc/periodic/security won't stick during mergemaster (unless you use IGNORE_FILES in /etc/rc/mergemaster.rc), you should probably put your version of the script in /usr/local/etc/periodic/security and change the names of the rc variables to key off of something that doesn't conflict with the base system version. There are other solutions, of course, but they'd require touching a lot of things and probably breaking historic naming conventions and expectations. -- | Jeremy Chadwick j...@parodius.com | | Parodius Networking http://www.parodius.com/ | | UNIX Systems Administrator Mountain View, CA, USA | | Making life hard for others since 1977. PGP: 4BD6C0CB | ___ 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: Using GTP and glabel for ZFS arrays
On 7/22/2010 9:51 PM, Pawel Tyll wrote: So... the smaller size won't mess things up... If by smaller size you mean smaller size of existing drives/partitions, then growing zpools by replacing smaller vdevs with larger ones is supported and works. What isn't supported is basically everything else: - you can't change number of raid columns (add/remove vdevs from raid) - you can't change number of parity columns (raidz1-2 or 3) - you can't change vdevs to smaller ones, even if pool's free space would permit that. Isn't what I'm doing breaking the last one? Good news is these features are planned/being worked on. If you can attach more drives to your system without disconnecting existing drives, then you can grow your pool pretty much risk-free. ___ 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 -- Dan Langille - http://langille.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: Using GTP and glabel for ZFS arrays
Dan Langille wrote: Thank you to all the helpful discussion. It's been very helpful and educational. Based on the advice and suggestions, I'm going to adjust my original plan as follows. [ ... ] Since I still have the medium-sized ZFS array on the bench, testing this GPT setup seemed like a good idea. The hardware's a Supermicro X8DTL-iF m/b + 12Gb memory, 2x 5502 Xeons, 3x Supermicro USASLP-L8I 3G SAS controllers and 24x Hitachi 2Tb drives. Partitioning the drives with the command-line: gpart add -s 1800G -t freebsd-zfs -l disk00 da0[1] gave the following results with bonnie-64: (Bonnie -r -s 5000|2|5)[2] ---Sequential Output ---Sequential Input-- --Random-- -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks--- GB M/sec %CPU M/sec %CPU M/sec %CPU M/sec %CPU M/sec %CPU /sec %CPU 5 97.7 92.8 387.2 40.1 341.8 45.7 178.7 81.6 972.4 54.7 335 1.5 20 98.0 87.0 434.9 45.2 320.9 42.5 141.4 87.4 758.0 53.5 178 1.6 50 98.0 92.0 435.7 46.0 325.4 44.7 143.4 93.1 788.6 57.1 140 1.5 Repartitioning with gpart add -b 1024 -s 1800G -t freebsd-zfs -l disk00 da0[1] gave the following: ---Sequential Output ---Sequential Input-- --Random-- -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks--- GB M/sec %CPU M/sec %CPU M/sec %CPU M/sec %CPU M/sec %CPU /sec %CPU 5 97.8 93.4 424.5 45.4 338.4 46.1 180.0 93.9 934.9 57.8 308 1.5 20 97.6 91.7 448.4 49.2 338.5 45.9 176.1 91.8 914.7 57.3 180 1.3 50 96.3 90.3 452.8 47.6 330.9 44.7 174.8 74.5 917.9 53.6 134 1.2 ... So it would seem that bothering to align the blocks does make a difference. For an apples/oranges comparison, here's the output from the other box we built. The hardware's more or less the same - the drive controller's an Areca-1280, but the OS was Solaris 10.latest: Sequential Output--- ---Sequential Input-- --Random-- -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks--- GB M/sec %CPU M/sec %CPU M/sec %CPU M/sec %CPU M/sec %CPU /sec %CPU 5 116.8 75.0 524.7 65.4 156.3 20.3 161.6 99.2 2924.0 100.0 19 300.0 20 139.9 95.4 503.5 51.7 106.6 13.4 97.6 62.0 133.0 8.8 346 4.2 50 147.4 95.8 465.8 50.1 106.1 13.5 97.9 62.5 143.8 8.7 195 4.1 [1] da0 - da23, obviously. [2] Our assumption locally is that the first test is likely just stressing the bandwidth to memory and the ZFS cache. -- JH-R ___ 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: Unable to install 8.x on a PowerEdge R810
On Thu, 2010-07-22 at 17:51 -0700, Chuck Swiger wrote: Hi, Mahlon-- On Jul 22, 2010, at 5:36 PM, Mahlon E. Smith wrote: Install worked great, though it appears I need to keep hyperthreading (logical processors bios option) disabled for it to boot reliably. Similar errors as before if I enable it. I believe FreeBSD ships with MAXCPU set to 32 by default (check sysctl kern.smp.maxcpus); your machine with hyperthreading enabled probably goes past that #, which is why it crashes with the topology error being reported Regards, confirmed. Yahoo has modified FreeBSD SMP CPU code to handle up to 64 CPUS, I think I'll take a look at it and try to get it committed to HEAD today. Sean ___ 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: Unable to install 8.x on a PowerEdge R810
On Thu, 2010-07-22 at 17:51 -0700, Chuck Swiger wrote: Hi, Mahlon-- On Jul 22, 2010, at 5:36 PM, Mahlon E. Smith wrote: Install worked great, though it appears I need to keep hyperthreading (logical processors bios option) disabled for it to boot reliably. Similar errors as before if I enable it. I believe FreeBSD ships with MAXCPU set to 32 by default (check sysctl kern.smp.maxcpus); your machine with hyperthreading enabled probably goes past that #, which is why it crashes with the topology error being reported Regards, confirmed. Yahoo has modified FreeBSD SMP CPU code to handle up to 64 CPUS, I think I'll take a look at it and try to get it committed to HEAD today. Sean ___ 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: Using GTP and glabel for ZFS arrays
On Thu, Jul 22, 2010 at 8:22 PM, Pawel Tyll pt...@nitronet.pl wrote: I do not think I can adjust the existing zpool on the fly. I think I need to copy everything elsewhere (i.e the 2 empty drives). Then start the new zpool from scratch. You can, and you should (for educational purposes if not for fun :), unless you wish to change raidz1 to raidz2. Replace, wait for resilver, if redoing used disk then offline it, wipe magic with dd (16KB at the beginning and end of disk/partition will do), carry on with GPT, rinse and repeat with next disk. When last vdev's replace finishes, your pool will grow automagically. If you do do it like this, be sure to leave the drive you are replacing attached to the array. Otherwise, in a raidz, if you were to suffer a disk failure on one of the other disks whilst replacing/growing the array, your raidz would be badly broken. Other than that, I can thoroughly recommend this method, I had data on 2 x 1.5 TB drives, and set up my raidz initially with 4 x 1.5 TB, 2 x 0.5 TB, copying data off the 1.5 TB drives onto the array and replacing each 0.5 TB drive when done. Cheers Tom ___ 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: Using GTP and glabel for ZFS arrays
On Fri, 23 Jul 2010, John Hawkes-Reed wrote: JH Since I still have the medium-sized ZFS array on the bench, testing this GPT JH setup seemed like a good idea. JH JH The hardware's a Supermicro X8DTL-iF m/b + 12Gb memory, 2x 5502 Xeons, 3x JH Supermicro USASLP-L8I 3G SAS controllers and 24x Hitachi 2Tb drives. [snip] JH For an apples/oranges comparison, here's the output from the other box we JH built. The hardware's more or less the same - the drive controller's an JH Areca-1280, but the OS was Solaris 10.latest: JH JHSequential Output--- ---Sequential Input-- --Random-- JH-Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks--- JH JH GB M/sec %CPU M/sec %CPU M/sec %CPU M/sec %CPU M/sec %CPU /sec %CPU JH 5 116.8 75.0 524.7 65.4 156.3 20.3 161.6 99.2 2924.0 100.0 19 300.0 . ~~ Frakking Cylons! You have quite a beast! ;-) -- Sincerely, D.Marck [DM5020, MCK-RIPE, DM3-RIPN] [ FreeBSD committer: ma...@freebsd.org ] *** Dmitry Morozovsky --- D.Marck --- Wild Woozle --- ma...@rinet.ru *** ___ 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: Using GTP and glabel for ZFS arrays
On 23/07/2010 19:04, Dmitry Morozovsky wrote: On Fri, 23 Jul 2010, John Hawkes-Reed wrote: JH Since I still have the medium-sized ZFS array on the bench, testing this GPT JH setup seemed like a good idea. JH JH The hardware's a Supermicro X8DTL-iF m/b + 12Gb memory, 2x 5502 Xeons, 3x JH Supermicro USASLP-L8I 3G SAS controllers and 24x Hitachi 2Tb drives. [snip] JH For an apples/oranges comparison, here's the output from the other box we JH built. The hardware's more or less the same - the drive controller's an JH Areca-1280, but the OS was Solaris 10.latest: JH JH Sequential Output--- ---Sequential Input-- --Random-- JH -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks--- JH JH GB M/sec %CPU M/sec %CPU M/sec %CPU M/sec %CPU M/sec %CPU /sec %CPU JH 5 116.8 75.0 524.7 65.4 156.3 20.3 161.6 99.2 2924.0 100.0 19 300.0 . ~~ Frakking Cylons! You have quite a beast! ;-) :D Like I said, I think those numbers were the Bonnie test data fitting inside the cache. Making all the bits work together has been a bit of a nightmare, but we're really pleased with the performance and stability of 8.1 + ZFS. (Having said that, the kit will spit the drives out of the cab over the weekend for spite...) -- JH-R ___ 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: Using GTP and glabel for ZFS arrays
On 7/22/2010 8:47 PM, Dan Langille wrote: Thank you to all the helpful discussion. It's been very helpful and educational. Based on the advice and suggestions, I'm going to adjust my original plan as follows. NOTE: glabel will not be used. First, create a new GUID Partition Table partition scheme on the HDD: gpart create -s GPT ad0 Let's see how much space we have. This output will be used to determine SOMEVALUE in the next command. gpart show Create a new partition within that scheme: gpart add -b 1024 -s SOMEVALUE -t freebsd-zfs -l disk00 ad0 The -b 1024 ensures alignment on a 4KB boundary. SOMEVALUE will be set so approximately 200MB is left empty at the end of the HDD. That's part more than necessary to accommodate the different actualy size of 2TB HDD. Repeat the above with ad1 to get disk01. Repeat for all other HDD... Then create your zpool: zpool create bigtank gpt/disk00 gpt/disk02 ... etc This plan will be applied to an existing 5 HDD ZFS pool. I have two new empty HDD which will be added to this new array (giving me 7 x 2TB HDD). The array is raidz1 and I'm wondering if I want to go to raidz2. That would be about 10TB and I'm only using up 3.1TB at present. That represents about 4 months of backups. I do not think I can adjust the existing zpool on the fly. I think I need to copy everything elsewhere (i.e the 2 empty drives). Then start the new zpool from scratch. The risk: when the data is on the 2 spare HDD, there is no redundancy. I wonder if my friend Jerry has a spare 2TB HDD I could borrow for the evening. The work is in progress. Updates are at http://beta.freebsddiary.org/zfs-with-gpart.php which will be updated frequently as the work continues. -- Dan Langille - http://langille.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: Floppy driver broken on 8.1-PRERELEASE?
Holm Tiffe h...@freibergnet.de wrote: Why I can't read 1440K blocks from the floppy anymore? Perhaps something changed in the DMA driver, such that it is no longer able to handle a request exceeding 65K (which was the hardwired limit of the original PC DMA controller). I've long used bs=120b for floppies, and never had a problem. Why 120? # 120*512 = 61440, which is less than 65K. # For both 1.2MB and 1.44MB floppies, 120 sectors is a multiple of the track length. ___ 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: Using GTP and glabel for ZFS arrays
On 7/22/2010 9:22 PM, Pawel Tyll wrote: I do not think I can adjust the existing zpool on the fly. I think I need to copy everything elsewhere (i.e the 2 empty drives). Then start the new zpool from scratch. You can, and you should (for educational purposes if not for fun :), unless you wish to change raidz1 to raidz2. Replace, wait for resilver, if redoing used disk then offline it, wipe magic with dd (16KB at the beginning and end of disk/partition will do), carry on with GPT, rinse and repeat with next disk. When last vdev's replace finishes, your pool will grow automagically. Pawell and I had an online chat about part of my strategy. To be clear: I have a 5x2TB raidz1 array. I have 2x2TB empty HDD My goal was to go to raidz2 by: - copy data to empty HDD - redo the zpool to be raidz2 - copy back the data - add in the two previously empty HDD to the zpol I now understand that after a raidz array has been created, you can't add a new HDD to it. I'd like to, but it sounds like you cannot. It is not possible to add a disk as a column to a RAID-Z, RAID-Z2, or RAID-Z3 vdev. http://en.wikipedia.org/wiki/ZFS#Limitations So, it seems I have a 5-HDD zpool and it's going to stay that way. -- Dan Langille - http://langille.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
FreeBSD 8.1-RELEASE Available
For those of you who don't subscribe to the freebsd-announce list: http://www.freebsd.org/releases/8.1R/announce.html Enjoy. -- Ken Smith - From there to here, from here to | kensm...@buffalo.edu there, funny things are everywhere. | - Theodore Geisel | signature.asc Description: This is a digitally signed message part
Re: Using GTP and glabel for ZFS arrays
On Fri, Jul 23, 2010 at 6:33 PM, Dan Langille d...@langille.org wrote: Pawell and I had an online chat about part of my strategy. To be clear: I have a 5x2TB raidz1 array. I have 2x2TB empty HDD My goal was to go to raidz2 by: - copy data to empty HDD - redo the zpool to be raidz2 - copy back the data - add in the two previously empty HDD to the zpol I now understand that after a raidz array has been created, you can't add a new HDD to it. I'd like to, but it sounds like you cannot. It is not possible to add a disk as a column to a RAID-Z, RAID-Z2, or RAID-Z3 vdev. http://en.wikipedia.org/wiki/ZFS#Limitations So, it seems I have a 5-HDD zpool and it's going to stay that way. You can fake it out by using sparse files for members of the new raidz2 vdev (when creating the vdev), then offline the file-based members so that you are running a degraded pool, copy the data to the pool, then replace the file-based members with physical harddrives. I've posted a theoretical method for doing so here: http://forums.freebsd.org/showpost.php?p=93889postcount=7 It's theoretical as I have not investigated how to create sparse files on FreeBSD, nor have I done this. It's based on several posts to the zfs-discuss mailing list where several people have done this on OpenSolaris. -- Freddie Cash fjwc...@gmail.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
Re: Unable to install 8.x on a PowerEdge R810
On Thu, 2010-07-22 at 17:51 -0700, Chuck Swiger wrote: Hi, Mahlon-- On Jul 22, 2010, at 5:36 PM, Mahlon E. Smith wrote: Install worked great, though it appears I need to keep hyperthreading (logical processors bios option) disabled for it to boot reliably. Similar errors as before if I enable it. I believe FreeBSD ships with MAXCPU set to 32 by default (check sysctl kern.smp.maxcpus); your machine with hyperthreading enabled probably goes past that #, which is why it crashes with the topology error being reported Regards, Kind of a large patch, but in order to make an omlette, you need to break a few servers. This is a diff against -CURRENT, not stable-8 as I didn't get a chance to test it. It is directly based off of changes that peter@ made to the Yahoo FreeBSD 7 tree. I have compile and boot tested this on my local machines, but I don't have 64 CPU machines to test upon. Sean Index: sys/kern/subr_smp.c === --- sys/kern/subr_smp.c (revision 210421) +++ sys/kern/subr_smp.c (working copy) @@ -181,7 +181,7 @@ id = td-td_oncpu; if (id == NOCPU) return; - ipi_selected(1 id, IPI_AST); + ipi_selected(cputomask(id), IPI_AST); } /* @@ -318,7 +318,7 @@ CTR1(KTR_SMP, restart_cpus(%x), map); /* signal other cpus to restart */ - atomic_store_rel_int(started_cpus, map); + atomic_store_rel_long(started_cpus, map); /* wait for each to clear its bit */ while ((stopped_cpus map) != 0) @@ -396,11 +396,11 @@ } CPU_FOREACH(i) { - if (((1 i) map) != 0) + if ((cputomask(i) map) != 0) ncpus++; } if (ncpus == 0) - panic(ncpus is 0 with map=0x%x, map); + panic(ncpus is 0 with map=0x%lx, map); /* obtain rendezvous lock */ mtx_lock_spin(smp_ipi_mtx); @@ -416,10 +416,10 @@ atomic_store_rel_int(smp_rv_waiters[0], 0); /* signal other processors, which will enter the IPI with interrupts off */ - ipi_selected(map ~(1 curcpu), IPI_RENDEZVOUS); + ipi_selected(map ~cputomask(curcpu), IPI_RENDEZVOUS); /* Check if the current CPU is in the map */ - if ((map (1 curcpu)) != 0) + if ((map cputomask(curcpu)) != 0) smp_rendezvous_action(); if (teardown_func == smp_no_rendevous_barrier) @@ -491,7 +491,7 @@ panic(Built bad topology at %p. CPU count %d != %d, top, top-cg_count, mp_ncpus); if (top-cg_mask != all_cpus) - panic(Built bad topology at %p. CPU mask 0x%X != 0x%X, + panic(Built bad topology at %p. CPU mask 0x%lX != 0x%lX, top, top-cg_mask, all_cpus); return (top); } @@ -535,7 +535,7 @@ parent-cg_children++; for (; parent != NULL; parent = parent-cg_parent) { if ((parent-cg_mask child-cg_mask) != 0) - panic(Duplicate children in %p. mask 0x%X child 0x%X, + panic(Duplicate children in %p. mask 0x%lX child 0x%lX, parent, parent-cg_mask, child-cg_mask); parent-cg_mask |= child-cg_mask; parent-cg_count += child-cg_count; Index: sys/kern/sched_ule.c === --- sys/kern/sched_ule.c (revision 210421) +++ sys/kern/sched_ule.c (working copy) @@ -851,7 +851,7 @@ * IPI the target cpu to force it to reschedule with the new * workload. */ - ipi_selected(1 TDQ_ID(low), IPI_PREEMPT); + ipi_cpu(TDQ_ID(low), IPI_PREEMPT); } tdq_unlock_pair(high, low); return (moved); @@ -974,7 +974,7 @@ return; } tdq-tdq_ipipending = 1; - ipi_selected(1 cpu, IPI_PREEMPT); + ipi_cpu(cpu, IPI_PREEMPT); } /* @@ -2411,7 +2411,7 @@ cpu = ts-ts_cpu; ts-ts_cpu = sched_pickcpu(td, 0); if (cpu != PCPU_GET(cpuid)) - ipi_selected(1 cpu, IPI_PREEMPT); + ipi_cpu(cpu, IPI_PREEMPT); #endif } @@ -2642,11 +2642,11 @@ sbuf_printf(sb, %*sgroup level=\%d\ cache-level=\%d\\n, indent, , indent, cg-cg_level); - sbuf_printf(sb, %*s cpu count=\%d\ mask=\0x%x\, indent, , + sbuf_printf(sb, %*s cpu count=\%d\ mask=\0x%lx\, indent, , cg-cg_count, cg-cg_mask); first = TRUE; for (i = 0; i MAXCPU; i++) { - if ((cg-cg_mask (1 i)) != 0) { + if ((cg-cg_mask cputomask(i)) != 0) { if (!first) sbuf_printf(sb, , ); else Index: sys/kern/kern_ktr.c === --- sys/kern/kern_ktr.c (revision 210421) +++ sys/kern/kern_ktr.c (working copy) @@ -211,7 +211,7 @@ if ((ktr_mask mask) == 0) return; cpu = KTR_CPU; - if (((1 cpu) ktr_cpumask) == 0) + if ((cputomask(cpu) ktr_cpumask) == 0) return; #if defined(KTR_VERBOSE) || defined(KTR_ALQ) td = curthread; Index: sys/kern/kern_pmc.c === --- sys/kern/kern_pmc.c (revision 210421) +++ sys/kern/kern_pmc.c (working copy) @@ -34,6 +34,7 @@ #include opt_hwpmc_hooks.h #include sys/types.h +#include sys/systm.h #include sys/pmc.h #include sys/pmckern.h #include sys/smp.h @@ -110,7 +111,7 @@ { #ifdef SMP return (pmc_cpu_is_present(cpu) - (hlt_cpus_mask (1 cpu)) ==
Re: Using GTP and glabel for ZFS arrays
On 7/23/2010 10:25 PM, Freddie Cash wrote: On Fri, Jul 23, 2010 at 6:33 PM, Dan Langilled...@langille.org wrote: Pawell and I had an online chat about part of my strategy. To be clear: I have a 5x2TB raidz1 array. I have 2x2TB empty HDD My goal was to go to raidz2 by: - copy data to empty HDD - redo the zpool to be raidz2 - copy back the data - add in the two previously empty HDD to the zpol I now understand that after a raidz array has been created, you can't add a new HDD to it. I'd like to, but it sounds like you cannot. It is not possible to add a disk as a column to a RAID-Z, RAID-Z2, or RAID-Z3 vdev. http://en.wikipedia.org/wiki/ZFS#Limitations So, it seems I have a 5-HDD zpool and it's going to stay that way. You can fake it out by using sparse files for members of the new raidz2 vdev (when creating the vdev), then offline the file-based members so that you are running a degraded pool, copy the data to the pool, then replace the file-based members with physical harddrives. So I'm creating a 7 drive pool, with 5 real drives members and two file-based members. I've posted a theoretical method for doing so here: http://forums.freebsd.org/showpost.php?p=93889postcount=7 It's theoretical as I have not investigated how to create sparse files on FreeBSD, nor have I done this. It's based on several posts to the zfs-discuss mailing list where several people have done this on OpenSolaris. I see no downside. There is no risk that it won't work and I'll lose all the data. -- Dan Langille - http://langille.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: Using GTP and glabel for ZFS arrays
On 24/07/2010, at 11:55, Freddie Cash wrote: It's theoretical as I have not investigated how to create sparse files on FreeBSD, nor have I done this. It's based on several posts to the zfs-discuss mailing list where several people have done this on OpenSolaris. FYI you would do.. truncate -s 1T /tmp/fake-disk1 mdconfig -a -t vnode -f /tmp/fake-disk1 etc.. Although you'd want to determine the exact size of your real disks from geom and use that. -- Daniel O'Connor software and network engineer for Genesis Software - http://www.gsoft.com.au The nice thing about standards is that there are so many of them to choose from. -- Andrew Tanenbaum GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C ___ 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: Using GTP and glabel for ZFS arrays
On 7/23/2010 10:42 PM, Daniel O'Connor wrote: On 24/07/2010, at 11:55, Freddie Cash wrote: It's theoretical as I have not investigated how to create sparse files on FreeBSD, nor have I done this. It's based on several posts to the zfs-discuss mailing list where several people have done this on OpenSolaris. FYI you would do.. truncate -s 1T /tmp/fake-disk1 mdconfig -a -t vnode -f /tmp/fake-disk1 etc.. Although you'd want to determine the exact size of your real disks from geom and use that. $ dd if=/dev/zero of=/tmp/sparsefile1.img bs=1 count=0 oseek=2000G 0+0 records in 0+0 records out 0 bytes transferred in 0.25 secs (0 bytes/sec) $ ls -l /tmp/sparsefile1.img -rw-r--r-- 1 dan wheel 2147483648000 Jul 23 22:49 /tmp/sparsefile1.img $ ls -lh /tmp/sparsefile1.img -rw-r--r-- 1 dan wheel 2.0T Jul 23 22:49 /tmp/sparsefile1.img -- Dan Langille - http://langille.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: Using GTP and glabel for ZFS arrays
On 7/23/2010 10:51 PM, Dan Langille wrote: On 7/23/2010 10:42 PM, Daniel O'Connor wrote: On 24/07/2010, at 11:55, Freddie Cash wrote: It's theoretical as I have not investigated how to create sparse files on FreeBSD, nor have I done this. It's based on several posts to the zfs-discuss mailing list where several people have done this on OpenSolaris. FYI you would do.. truncate -s 1T /tmp/fake-disk1 mdconfig -a -t vnode -f /tmp/fake-disk1 etc.. Although you'd want to determine the exact size of your real disks from geom and use that. $ dd if=/dev/zero of=/tmp/sparsefile1.img bs=1 count=0 oseek=2000G 0+0 records in 0+0 records out 0 bytes transferred in 0.25 secs (0 bytes/sec) $ ls -l /tmp/sparsefile1.img -rw-r--r-- 1 dan wheel 2147483648000 Jul 23 22:49 /tmp/sparsefile1.img $ ls -lh /tmp/sparsefile1.img -rw-r--r-- 1 dan wheel 2.0T Jul 23 22:49 /tmp/sparsefile1.img Going a bit further, and actually putting 30MB of data in there: $ rm sparsefile1.img $ dd if=/dev/zero of=/tmp/sparsefile1.img bs=1 count=0 oseek=2000G 0+0 records in 0+0 records out 0 bytes transferred in 0.30 secs (0 bytes/sec) $ ls -lh /tmp/sparsefile1.img -rw-r--r-- 1 dan wheel 2.0T Jul 23 22:59 /tmp/sparsefile1.img $ dd if=/dev/zero of=sparsefile1.img bs=1M count=30 conv=notrunc 30+0 records in 30+0 records out 31457280 bytes transferred in 0.396570 secs (79323405 bytes/sec) $ ls -l sparsefile1.img -rw-r--r-- 1 dan wheel 2147483648000 Jul 23 23:00 sparsefile1.img $ ls -lh sparsefile1.img -rw-r--r-- 1 dan wheel 2.0T Jul 23 23:00 sparsefile1.img $ -- Dan Langille - http://langille.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: Using GTP and glabel for ZFS arrays
On Fri, Jul 23, 2010 at 9:25 PM, Freddie Cash fjwc...@gmail.com wrote: It's theoretical as I have not investigated how to create sparse files on FreeBSD, nor have I done this. It's based on several posts to the zfs-discuss mailing list where several people have done this on OpenSolaris. Easiest way to create sparse eg 20 GB assuming test.img doesn't exist already truncate -s 20g test.img ls -sk test.img 1 test.img The other standard dd method works fine too, trucate just makes it easy. -- Adam Vande More ___ 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