wsmouse, synaptics, xorg.conf, and Touchpad versus Touchscreen

2024-03-02 Thread Philippe Meunier
Hi,

I have a Thinkpad T14g3 (dmesg below), which has both a touchpad and a
touchscreen (and also the red knob thing but I don't care about that one).

When I start Xorg with no xorg.conf, I get the following in the logs (see
at the end of this message for the complete logs);

[...]
[ 13275.950] (II) config/wscons: checking input device /dev/wskbd
[ 13275.950] (II) wskbd: using layout us
[ 13275.950] (II) LoadModule: "kbd"
[ 13275.951] (II) Loading /usr/X11R6/lib/modules/input/kbd_drv.so
[ 13275.951] (II) Module kbd: vendor="X.Org Foundation"
[ 13275.951]compiled for 1.21.1.11, module version = 2.0.0
[ 13275.951]Module class: X.Org XInput Driver
[ 13275.951]ABI class: X.Org XInput driver, version 24.4
[ 13275.951] (II) Using input driver 'kbd' for '/dev/wskbd'
[ 13275.951] (**) /dev/wskbd: always reports core events
[ 13275.951] (**) /dev/wskbd: always reports core events
[ 13275.951] (**) Option "Protocol" "standard"
[ 13275.951] (**) Option "XkbRules" "base"
[ 13275.951] (**) Option "XkbModel" "pc105"
[ 13275.951] (**) Option "XkbLayout" "us"
[ 13275.951] (II) XINPUT: Adding extended input device "/dev/wskbd" (type: 
KEYBOARD, id 6)
[ 13276.170] (II) config/wscons: checking input device /dev/wsmouse0
[ 13276.170] (II) LoadModule: "ws"
[ 13276.172] (II) Loading /usr/X11R6/lib/modules/input/ws_drv.so
[ 13276.172] (II) Module ws: vendor="X.Org Foundation"
[ 13276.172]compiled for 1.21.1.11, module version = 1.3.0
[ 13276.172]Module class: X.Org XInput Driver
[ 13276.172]ABI class: X.Org XInput driver, version 24.4
[ 13276.172] (II) Using input driver 'ws' for '/dev/wsmouse0'
[ 13276.172] (**) /dev/wsmouse0: always reports core events
[ 13276.172] (II) ws: /dev/wsmouse0: debuglevel 0
[ 13276.172] (**) Option "Device" "/dev/wsmouse0"
[ 13276.172] (**) ws: /dev/wsmouse0: ZAxisMapping: buttons 4 and 5
[ 13276.172] (**) ws: /dev/wsmouse0: WAxisMapping: buttons 6 and 7
[ 13276.172] (**) ws: /dev/wsmouse0: associated screen: 0
[ 13276.390] (**) ws: /dev/wsmouse0: device will work in raw mode
[ 13276.390] (II) ws: /dev/wsmouse0: minimum x position: 0
[ 13276.390] (II) ws: /dev/wsmouse0: maximum x position: 3168
[ 13276.390] (II) ws: /dev/wsmouse0: minimum y position: 0
[ 13276.390] (II) ws: /dev/wsmouse0: maximum y position: 1968
[ 13276.390] (==) ws: /dev/wsmouse0: Buttons: 7
[ 13276.391] (**) ws: /dev/wsmouse0: YAxisMapping: buttons 4 and 5
[ 13276.391] (II) XINPUT: Adding extended input device "/dev/wsmouse0" (type: 
TOUCHSCREEN, id 7)
[ 13276.610] (**) /dev/wsmouse0: (accel) keeping acceleration scheme 1
[ 13276.610] (**) /dev/wsmouse0: (accel) acceleration profile 0
[ 13276.610] (**) /dev/wsmouse0: (accel) acceleration factor: 2.000
[ 13276.610] (**) /dev/wsmouse0: (accel) acceleration threshold: 4
[ 13276.610] (II) config/wscons: checking input device /dev/wsmouse
[ 13276.610] (II) Using input driver 'ws' for '/dev/wsmouse'
[ 13276.611] (**) /dev/wsmouse: always reports core events
[ 13276.611] (II) ws: /dev/wsmouse: debuglevel 0
[ 13276.611] (**) Option "Device" "/dev/wsmouse"
[ 13276.611] (**) ws: /dev/wsmouse: ZAxisMapping: buttons 4 and 5
[ 13276.611] (**) ws: /dev/wsmouse: WAxisMapping: buttons 6 and 7
[ 13276.611] (**) ws: /dev/wsmouse: associated screen: 0
[ 13276.892] (II) ws: /dev/wsmouse: minimum x position: 0
[ 13276.892] (II) ws: /dev/wsmouse: maximum x position: 1919
[ 13276.892] (II) ws: /dev/wsmouse: minimum y position: 0
[ 13276.892] (II) ws: /dev/wsmouse: maximum y position: 1199
[ 13276.892] (==) ws: /dev/wsmouse: Buttons: 7
[ 13276.896] (**) ws: /dev/wsmouse: YAxisMapping: buttons 4 and 5
[ 13276.896] (II) XINPUT: Adding extended input device "/dev/wsmouse" (type: 
MOUSE, id 8)
[ 13277.172] (**) /dev/wsmouse: (accel) keeping acceleration scheme 1
[ 13277.172] (**) /dev/wsmouse: (accel) acceleration profile 0
[ 13277.172] (**) /dev/wsmouse: (accel) acceleration factor: 2.000
[ 13277.172] (**) /dev/wsmouse: (accel) acceleration threshold: 4
[ 13277.222] (II) modeset(0): Disabling kernel dirty updates, not required.

Note how there's a keyboard and a touchscreen and a mouse but no touchpad.
The touchpad does in fact work perfectly, and so does the touchscreen and
the red knob thing, although I have no idea how that happens.

My problem is that I would like to use the synaptics driver for the
touchpad (for things like coasting).  So I created the following xorg.conf:

Section "InputClass"
Identifier "wsmouse touchpad"
Driver "synaptics"
MatchIsTouchpad "on"
EndSection

which ends up doing absolutely nothing because MatchIsTouchpad does not
match anything.

Next I tried to use MatchIsTouchscreen instead, which did match, and did
load the synaptics driver, but then I got a "Synaptics driver unable to
detect protocol" error, the synaptics driver got immediately unloaded by
Xorg, and the mouse ended up no working at all.

Next I looked at the output of wsconsctl:

# wsconsctl | egrep -i mouse
wsconsctl: Use explicit arg to view keyboard.map.

Re: qwx0 / QCNFA765 Does 802.11g Only

2024-03-02 Thread Philippe Meunier
Stefan Sperling wrote:
>qwx works fine on my 11ac AP in 11a mode. This driver does not yet
>support 11n/11ac modes, and adding such support will require a big
>chunk of further development time, it won't be ready for 7.5.

Okay, thanks, good to know.

>Does your AP have support for "legacy 11a/b/g" clients disabled somehow?
>Some APs advertise such options for performance in their config and may
>need to be disabled to make it work.

I don't have control over the AP, my landlord does...  I'll try to have a
look.  Otherwise I'll just stick with 11g until 11n/11ac is supported.

>Can you please show a beacon of this AP?
>
>One line from tcpdump this command while trying to associate to the AP should
>suffice:
>
>  tcdump -n -i qwx0 -y IEEE802_11_RADIO -s 1500 -v wlan host 20:c0:47:bb:bc:4c
>
>I am looking for the field which lists the supported rates:
>
>   ... rates 6M* 9M 12M* 18M 24M* 36M 48M 54M, ...
>

Before, during, and after:

22:21:27.027345 802.11 flags=0<>: beacon, 
caps=10421, ssid (Fios-RSXPW-5G), 
rates 6M* 9M 12M* 18M 24M* 36M 48M 54M, tim 0x0001, country 'US ', channel 
36 limit 30dB, channel 40 limit 30dB, channel 44 limit 30dB, channel 48 limit 
30dB, channel 52 limit 24dB, channel 56 limit 24dB, channel 60 limit 24dB, 
channel 64 limit 24dB, channel 100 limit 24dB, channel 104 limit 24dB, channel 
108 limit 24dB, channel 112 limit 24dB, channel 116 limit 24dB, channel 132 
limit 24dB, channel 136 limit 24dB, channel 140 limit 24dB, channel 144 limit 
24dB, channel 149 limit 30dB, channel 153 limit 30dB, channel 157 limit 30dB, 
channel 161 limit 30dB, channel 165 limit 30dB, power constraint 0dB, tpcreport 
0x1100, rsn=, 1 
stations, 23% utilization, admission capacity 0us/s, 70:5 0x03, 
htcaps=<20/40MHz,LDPC,SGI@20MHz,SGI@40MHz,TXSTBC,RXSTBC 1 stream,A-MSDU 
7935,A-MPDU max 65535,A-MPDU spacing 8.00us,RxMCS 0xff00>, 
htop=<40MHz chan 40:36,RIFS,htprot none,non-greenfield STA,basic MCS set 
0x>, 127:8 0x04000840, vhtcaps=, vhtop=<80MHz chan,center chan 42,basic MCS set 
0-7@1SS 0-7@2SS 0-7@3SS 0-7@4SS 0-7@5SS 0-7@6SS 0-7@7SS>, 195:4 0x02020202, 
vendor 
0x0050f204104a000110104400010210470010a824e8f8fa487650a3b58fa9b1544952103c0001031049000600372a000120,
 vendor 0x0010180201001c, vendor 
0x0050f2020101840003a427a442435e0062322f00
22:21:30.011040 802.11 flags=0<>: authentication request
22:21:30.013709 802.11 flags=0<>: authentication response
22:21:30.013714 802.11 flags=0<>: association request, 
caps=2001, ssid (Fios-RSXPW-5G), rates 6M* 9M 12M* 18M 24M* 
36M 48M 54M, rsn=
22:21:30.015636 802.11 flags=8: association response
22:21:30.099538 802.11 flags=0<>: beacon, 
caps=10421, ssid (Fios-RSXPW-5G), 
rates 6M* 9M 12M* 18M 24M* 36M 48M 54M, tim 0x0001, country 'US ', channel 
36 limit 30dB, channel 40 limit 30dB, channel 44 limit 30dB, channel 48 limit 
30dB, channel 52 limit 24dB, channel 56 limit 24dB, channel 60 limit 24dB, 
channel 64 limit 24dB, channel 100 limit 24dB, channel 104 limit 24dB, channel 
108 limit 24dB, channel 112 limit 24dB, channel 116 limit 24dB, channel 132 
limit 24dB, channel 136 limit 24dB, channel 140 limit 24dB, channel 144 limit 
24dB, channel 149 limit 30dB, channel 153 limit 30dB, channel 157 limit 30dB, 
channel 161 limit 30dB, channel 165 limit 30dB, power constraint 0dB, tpcreport 
0x1100, rsn=, 1 
stations, 20% utilization, admission capacity 0us/s, 70:5 0x03, 
htcaps=<20/40MHz,LDPC,SGI@20MHz,SGI@40MHz,TXSTBC,RXSTBC 1 stream,A-MSDU 
7935,A-MPDU max 65535,A-MPDU spacing 8.00us,RxMCS 0xff00>, 
htop=<40MHz chan 40:36,RIFS,htprot none,non-greenfield STA,basic MCS set 
0x>, 127:8 0x04000840, vhtcaps=, vhtop=<80MHz chan,center chan 42,basic MCS set 
0-7@1SS 0-7@2SS 0-7@3SS 0-7@4SS 0-7@5SS 0-7@6SS 0-7@7SS>, 195:4 0x02020202, 
vendor 
0x0050f204104a000110104400010210470010a824e8f8fa487650a3b58fa9b1544952103c0001031049000600372a000120,
 vendor 0x0010180201001c, vendor 
0x0050f2020101840003a427a442435e0062322f00

Thanks for your help!

Philippe




qwx0 / QCNFA765 Does 802.11g Only

2024-03-01 Thread Philippe Meunier
Hi,

I have a Thinkpad T14g3 (dmesg at the end, using the most recent snapshot)
with a QCNFA765 Wifi card.  The local access point (not under my control)
provides two networks, one 802.11g one (Fios-RSXPW) and one 802.11ac
(Fios-RSXPW-5G):

$ ifconfig qwx0 scan
qwx0: flags=808843 mtu 1500
lladdr 04:7b:cb:b9:0b:44
index 2 priority 4 llprio 3
groups: wlan
media: IEEE802.11 autoselect (OFDM6 mode 11a)
status: no network
ieee80211: join Fios-RSXPW-5G chan 40 bssid 20:c0:47:bb:bc:4c -86dBm 
wpakey wpaprotos wpa2 wpaakms psk wpaciphers ccmp wpagroupcipher ccmp
nwid 0x00 chan 40 bssid 
22:c0:47:bb:bc:4d -32dBm HT-MCS23 privacy,spectrum_mgmt,radio_measurement,wpa2 
[...]
nwid Fios-RSXPW-5G chan 40 bssid 20:c0:47:bb:bc:4c -32dBm 
HT-MCS23 privacy,spectrum_mgmt,radio_measurement,wpa2 
nwid Fios-RSXPW chan 11 bssid 20:c0:47:bb:bc:4e -40dBm HT-MCS23 
privacy,short_preamble,short_slottime,radio_measurement,wpa2 
[...]
nwid Biscuit chan 48 bssid 78:45:58:f7:a2:dd -90dBm HT-MCS31 
privacy,spectrum_mgmt,radio_measurement,wpa2 

Both networks use the same password and I can connect to Fios-RSXPW without
problem (I'm using it to send this message).  I cannot connect to
Fios-RSXPW-5G, though:

$ while true; do ifconfig qwx0; sleep 1; done
qwx0: flags=808843 mtu 1500
lladdr 04:7b:cb:b9:0b:44
index 2 priority 4 llprio 3
groups: wlan
media: IEEE802.11 autoselect (OFDM6 mode 11a)
status: no network
ieee80211: join ""
[...]
qwx0: flags=808843 mtu 1500
lladdr 04:7b:cb:b9:0b:44
index 2 priority 4 llprio 3
groups: wlan
media: IEEE802.11 autoselect (OFDM6)
status: no network
ieee80211: join Fios-RSXPW-5G wpakey wpaprotos wpa2 wpaakms psk 
wpaciphers ccmp wpagroupcipher ccmp
[...]
qwx0: flags=808843 mtu 1500
lladdr 04:7b:cb:b9:0b:44
index 2 priority 4 llprio 3
groups: wlan
media: IEEE802.11 autoselect (OFDM6 mode 11a)
status: no network
ieee80211: join Fios-RSXPW-5G chan 40 bssid 20:c0:47:bb:bc:4c -83dBm 
wpakey wpaprotos wpa2 wpaakms psk wpaciphers ccmp wpagroupcipher ccmp

(I've cut redundant output.)  The interface just cycles through the three
states listed above for ever without associating with the access point and
so never gets an IP address.

Here's the output I get when putting the interface in debug mode (again,
I've cut redundant / unrelated output):

Mar  1 18:22:13 t14 /bsd: qwx0: end passive scan
Mar  1 18:22:13 t14 /bsd: qwx0: - 00:57:94:d5:04:f2   40  +169 54M   ess  
privacy   rsn  "D504E2_5G"!
[...]
Mar  1 18:22:13 t14 /bsd: qwx0: - 20:c0:47:bb:bc:4e   11  +216 54M   ess  
privacy   rsn  "Fios-RSXPW"!
[...]
Mar  1 18:22:13 t14 /bsd: qwx0: - f0:72:ea:44:2c:bd  149  +168 54M   ess  
privacy   rsn  "Nest Home"!
Mar  1 18:22:13 t14 /bsd: qwx0: - fa:8f:ca:76:66:01   48  +176 54M   ess   
no!  rsn! ""!
Mar  1 18:22:13 t14 /bsd: qwx0: SCAN -> SCAN
Mar  1 18:22:16 t14 /bsd: qwx0: end passive scan
Mar  1 18:22:16 t14 /bsd: qwx0: - 00:57:94:d5:04:f2   40  +169 54M   ess  
privacy   rsn  "D504E2_5G"!
[...]
Mar  1 18:22:16 t14 /bsd: qwx0: - 20:c0:47:bb:bc:4e   11  +214 54M   ess  
privacy   rsn  "Fios-RSXPW"!
[...]
Mar  1 18:22:16 t14 /bsd: qwx0: - f0:72:ea:44:2c:bd  149  +168 54M   ess  
privacy   rsn  "Nest Home"!
Mar  1 18:22:16 t14 /bsd: qwx0: - fa:8f:ca:76:66:01   48  +176 54M   ess   
no!  rsn! ""!
Mar  1 18:22:16 t14 /bsd: qwx0: SCAN -> SCAN
Mar  1 18:22:19 t14 /bsd: qwx0: end passive scan
Mar  1 18:22:19 t14 /bsd: qwx0: - 00:57:94:d5:04:f2   40  +169 54M   ess  
privacy   rsn  "D504E2_5G"!
[...]
Mar  1 18:22:19 t14 /bsd: qwx0: + 20:c0:47:bb:bc:4c   40  +225 54M   ess  
privacy   rsn  "Fios-RSXPW-5G"
Mar  1 18:22:19 t14 /bsd: qwx0: - 20:c0:47:bb:bc:4e   11  +214 54M   ess  
privacy   rsn  "Fios-RSXPW"!
[...]
Mar  1 18:22:19 t14 /bsd: qwx0: - f0:72:ea:44:2c:bd  149  +168 54M   ess  
privacy   rsn  "Nest Home"!
Mar  1 18:22:19 t14 /bsd: qwx0: - fa:8f:ca:76:66:01   48  +176 54M   ess   
no!  rsn! ""!
Mar  1 18:22:19 t14 /bsd: qwx0: SCAN -> AUTH
Mar  1 18:22:19 t14 /bsd: qwx0: sending auth to 20:c0:47:bb:bc:4c on channel 40 
mode 11a
Mar  1 18:22:19 t14 /bsd: qwx0: AUTH -> ASSOC
Mar  1 18:22:19 t14 /bsd: qwx0: sending assoc_req to 20:c0:47:bb:bc:4c on 
channel 40 mode 11a
Mar  1 18:22:19 t14 /bsd: qwx0: association failed (status 18) for 
20:c0:47:bb:bc:4c
Mar  1 18:22:23 t14 /bsd: qwx0: association timed out for 20:c0:47:bb:bc:4c
Mar  1 18:22:23 t14 /bsd: qwx0: ASSOC -> SCAN
Mar  1 18:22:27 t14 /bsd: qwx0: end passive scan
Mar  1 18:22:27 t14 /bsd: qwx0: best AP 20:c0:47:bb:bc:4c "Fios-RSXPW-5G" score 
56
Mar  1 18:22:27 t14 /bsd: qwx0: switching to network "Fios-RSXPW-5G"
Mar  1 18:22:27 t14 /bsd: qwx0: - 00:57:94:d5:04:f2   40  +170 54M   ess  
privacy   rsn  "D504E2_5G"!
[...]
Mar  1 18:22:27 t14 /bsd: qwx0: - 20:c0:47:bb:bc:4e   11! 

Re: Thinkpad T14 AMD Gen 3

2022-11-10 Thread Philippe Meunier
Jonathan Gray wrote:
>Glad to hear amdgpu works on Rembrandt/Yellow Carp.

On a related note, I noticed I get the following kernel message when
shutting down the X server:

[drm] *ERROR* Error waiting for DMUB idle: status=3

Otherwise X seems to work fine.

>diff below for those, though it is just cosmetic
>run 'make' in /sys/dev/pci before building a kernel

New dmesg below, although as you say it's just cosmetic.

>Does sound work when using headphones?

Neither built-in speakers nor plugged-in headphones work.

Regarding networking, the following also shows up at boot, using the
default pf.conf and when there's no ethernet cable plugged in (I think: I
don't remember seeing this when the cable was plugged in):

pfctl: DIOCADDRULE: Operation not supported by device
pf enabled
starting network
pfctl: DIOCADDRULE: Operation not supported by device

Philippe



OpenBSD 7.2-current (GENERIC.MP) #1: Thu Nov 10 22:06:16 EST 2022
meun...@t14.fios-router.home:/usr/src/sys/arch/amd64/compile/GENERIC.MP
real mem = 33014763520 (31485MB)
avail mem = 31996751872 (30514MB)
random: good seed from bootblocks
mpath0 at root
scsibus0 at mpath0: 256 targets
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 3.3 @ 0x73888000 (70 entries)
bios0: vendor LENOVO version "R23ET47W (1.17 )" date 05/27/2022
bios0: LENOVO 21CF003XUS
efi0 at bios0: UEFI 2.7
efi0: Lenovo rev 0x1110
acpi0 at bios0: ACPI 6.3Undefined scope: \\_SB_.PCI0.GPP1
Undefined scope: \\_SB_.PCI0.GPP2
Undefined scope: \\_SB_.PCI0.GPP2.WWAN
Undefined scope: \\_SB_.PCI0.GPP0

acpi0: sleep states S0 S4 S5
acpi0: tables DSDT FACP SSDT SSDT IVRS SSDT SSDT SSDT SSDT TPM2 MSDM BATB HPET 
APIC MCFG SBST WSMT SSDT CRAT CDIT VFCT FPDT SSDT SSDT SSDT BGRT SSDT SSDT SSDT 
SSDT SSDT SSDT SSDT SSDT SSDT UEFI SSDT SSDT SSDT
acpi0: wakeup devices GPP5(S4) GPP6(S0) GPP7(S0) LID_(S4) SLPB(S3)
acpitimer0 at acpi0: 3579545 Hz, 32 bits
acpihpet0 at acpi0: 14318180 Hz
acpimadt0 at acpi0 addr 0xfee0: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: AMD Ryzen 7 PRO 6850U with Radeon Graphics, 2700.01 MHz, 19-44-01
cpu0: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,PCLMUL,MWAIT,SSSE3,FMA3,CX16,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,AES,XSAVE,AVX,F16C,RDRAND,NXE,MMXX,FFXSR,PAGE1GB,RDTSCP,LONG,LAHF,CMPLEG,SVM,EAPICSP,AMCR8,ABM,SSE4A,MASSE,3DNOWP,OSVW,IBS,SKINIT,TCE,TOPEXT,CPCTR,DBKP,PCTRL3,MWAITX,ITSC,FSGSBASE,BMI1,AVX2,SMEP,BMI2,INVPCID,PQM,RDSEED,ADX,SMAP,CLFLUSHOPT,CLWB,SHA,UMIP,PKU,IBPB,IBRS,STIBP,SSBD,XSAVEOPT,XSAVEC,XGETBV1,XSAVES
cpu0: 32KB 64b/line 8-way D-cache, 32KB 64b/line 8-way I-cache, 512KB 64b/line 
8-way L2 cache, 16MB 64b/line 16-way L3 cache
cpu0: smt 0, core 0, package 0
mtrr: Pentium Pro MTRR support, 8 var ranges, 88 fixed ranges
cpu0: apic clock running at 24MHz
cpu0: mwait min=64, max=64, C-substates=1.1, IBE
cpu1 at mainbus0: apid 1 (application processor)
cpu1: AMD Ryzen 7 PRO 6850U with Radeon Graphics, 2700.00 MHz, 19-44-01
cpu1: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,PCLMUL,MWAIT,SSSE3,FMA3,CX16,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,AES,XSAVE,AVX,F16C,RDRAND,NXE,MMXX,FFXSR,PAGE1GB,RDTSCP,LONG,LAHF,CMPLEG,SVM,EAPICSP,AMCR8,ABM,SSE4A,MASSE,3DNOWP,OSVW,IBS,SKINIT,TCE,TOPEXT,CPCTR,DBKP,PCTRL3,MWAITX,ITSC,FSGSBASE,BMI1,AVX2,SMEP,BMI2,INVPCID,PQM,RDSEED,ADX,SMAP,CLFLUSHOPT,CLWB,SHA,UMIP,PKU,IBPB,IBRS,STIBP,SSBD,XSAVEOPT,XSAVEC,XGETBV1,XSAVES
cpu1: 32KB 64b/line 8-way D-cache, 32KB 64b/line 8-way I-cache, 512KB 64b/line 
8-way L2 cache, 16MB 64b/line 16-way L3 cache
cpu1: smt 1, core 0, package 0
tsc: cpu0/cpu1: sync test failed
timecounter: active counter changed: tsc -> acpihpet0
cpu2 at mainbus0: apid 2 (application processor)
cpu2: AMD Ryzen 7 PRO 6850U with Radeon Graphics, 2700.00 MHz, 19-44-01
cpu2: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,PCLMUL,MWAIT,SSSE3,FMA3,CX16,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,AES,XSAVE,AVX,F16C,RDRAND,NXE,MMXX,FFXSR,PAGE1GB,RDTSCP,LONG,LAHF,CMPLEG,SVM,EAPICSP,AMCR8,ABM,SSE4A,MASSE,3DNOWP,OSVW,IBS,SKINIT,TCE,TOPEXT,CPCTR,DBKP,PCTRL3,MWAITX,ITSC,FSGSBASE,BMI1,AVX2,SMEP,BMI2,INVPCID,PQM,RDSEED,ADX,SMAP,CLFLUSHOPT,CLWB,SHA,UMIP,PKU,IBPB,IBRS,STIBP,SSBD,XSAVEOPT,XSAVEC,XGETBV1,XSAVES
cpu2: 32KB 64b/line 8-way D-cache, 32KB 64b/line 8-way I-cache, 512KB 64b/line 
8-way L2 cache, 16MB 64b/line 16-way L3 cache
cpu2: smt 0, core 1, package 0
cpu3 at mainbus0: apid 3 (application processor)
cpu3: AMD Ryzen 7 PRO 6850U with Radeon Graphics, 2700.01 MHz, 19-44-01
cpu3: 

Thinkpad T14 AMD Gen 3

2022-11-07 Thread Philippe Meunier
Hi,

I have a new Thinkpad T14 AMD Gen 3.  I tried OpenBSD 7.2-current and the
install went smoothly (from USB thumb drive to USB thumb drive, for now).
The machine booted, X11 seems to work fine, and so does the Ethernet
interface, but there's a whole bunch of "unknown" and "not configured"
stuff in the dmesg (see below).  For example there doesn't seem to be any
sound (the keyboard doesn't beep, at least).

More importantly the wifi card (Qualcomm QCNFA765) is not recognized.  Is
there any chance that it might become supported in the reasonable future or
should I try to get a different wifi card (and in such a case, which one)?
Any advice?  Thank you.

(I can provide more information like a pcidump or acpidump if anyone is
interested in having a look...)

Philippe



OpenBSD 7.2-current (GENERIC.MP) #825: Sun Nov  6 12:50:38 MST 2022
dera...@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC.MP
real mem = 33014763520 (31485MB)
avail mem = 31996776448 (30514MB)
random: good seed from bootblocks
mpath0 at root
scsibus0 at mpath0: 256 targets
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 3.3 @ 0x73888000 (70 entries)
bios0: vendor LENOVO version "R23ET47W (1.17 )" date 05/27/2022
bios0: LENOVO 21CF003XUS
efi0 at bios0: UEFI 2.7
efi0: Lenovo rev 0x1110
acpi0 at bios0: ACPI 6.3Undefined scope: \\_SB_.PCI0.GPP1
Undefined scope: \\_SB_.PCI0.GPP2
Undefined scope: \\_SB_.PCI0.GPP2.WWAN
Undefined scope: \\_SB_.PCI0.GPP0

acpi0: sleep states S0 S4 S5
acpi0: tables DSDT FACP SSDT SSDT IVRS SSDT SSDT SSDT SSDT TPM2 MSDM BATB HPET 
APIC MCFG SBST WSMT SSDT CRAT CDIT VFCT FPDT SSDT SSDT SSDT BGRT SSDT SSDT SSDT 
SSDT SSDT SSDT SSDT SSDT SSDT UEFI SSDT SSDT SSDT
acpi0: wakeup devices GPP5(S4) GPP6(S0) GPP7(S0) LID_(S4) SLPB(S3)
acpitimer0 at acpi0: 3579545 Hz, 32 bits
acpihpet0 at acpi0: 14318180 Hz
acpimadt0 at acpi0 addr 0xfee0: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: AMD Ryzen 7 PRO 6850U with Radeon Graphics, 2700.00 MHz, 19-44-01
cpu0: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,PCLMUL,MWAIT,SSSE3,FMA3,CX16,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,AES,XSAVE,AVX,F16C,RDRAND,NXE,MMXX,FFXSR,PAGE1GB,RDTSCP,LONG,LAHF,CMPLEG,SVM,EAPICSP,AMCR8,ABM,SSE4A,MASSE,3DNOWP,OSVW,IBS,SKINIT,TCE,TOPEXT,CPCTR,DBKP,PCTRL3,MWAITX,ITSC,FSGSBASE,BMI1,AVX2,SMEP,BMI2,INVPCID,PQM,RDSEED,ADX,SMAP,CLFLUSHOPT,CLWB,SHA,UMIP,PKU,IBPB,IBRS,STIBP,SSBD,XSAVEOPT,XSAVEC,XGETBV1,XSAVES
cpu0: 32KB 64b/line 8-way D-cache, 32KB 64b/line 8-way I-cache, 512KB 64b/line 
8-way L2 cache, 16MB 64b/line 16-way L3 cache
cpu0: smt 0, core 0, package 0
mtrr: Pentium Pro MTRR support, 8 var ranges, 88 fixed ranges
cpu0: apic clock running at 24MHz
cpu0: mwait min=64, max=64, C-substates=1.1, IBE
cpu1 at mainbus0: apid 1 (application processor)
cpu1: AMD Ryzen 7 PRO 6850U with Radeon Graphics, 2700.00 MHz, 19-44-01
cpu1: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,PCLMUL,MWAIT,SSSE3,FMA3,CX16,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,AES,XSAVE,AVX,F16C,RDRAND,NXE,MMXX,FFXSR,PAGE1GB,RDTSCP,LONG,LAHF,CMPLEG,SVM,EAPICSP,AMCR8,ABM,SSE4A,MASSE,3DNOWP,OSVW,IBS,SKINIT,TCE,TOPEXT,CPCTR,DBKP,PCTRL3,MWAITX,ITSC,FSGSBASE,BMI1,AVX2,SMEP,BMI2,INVPCID,PQM,RDSEED,ADX,SMAP,CLFLUSHOPT,CLWB,SHA,UMIP,PKU,IBPB,IBRS,STIBP,SSBD,XSAVEOPT,XSAVEC,XGETBV1,XSAVES
cpu1: 32KB 64b/line 8-way D-cache, 32KB 64b/line 8-way I-cache, 512KB 64b/line 
8-way L2 cache, 16MB 64b/line 16-way L3 cache
cpu1: smt 1, core 0, package 0
tsc: cpu0/cpu1: sync test failed
timecounter: active counter changed: tsc -> acpihpet0
cpu2 at mainbus0: apid 2 (application processor)
cpu2: AMD Ryzen 7 PRO 6850U with Radeon Graphics, 2700.00 MHz, 19-44-01
cpu2: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,PCLMUL,MWAIT,SSSE3,FMA3,CX16,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,AES,XSAVE,AVX,F16C,RDRAND,NXE,MMXX,FFXSR,PAGE1GB,RDTSCP,LONG,LAHF,CMPLEG,SVM,EAPICSP,AMCR8,ABM,SSE4A,MASSE,3DNOWP,OSVW,IBS,SKINIT,TCE,TOPEXT,CPCTR,DBKP,PCTRL3,MWAITX,ITSC,FSGSBASE,BMI1,AVX2,SMEP,BMI2,INVPCID,PQM,RDSEED,ADX,SMAP,CLFLUSHOPT,CLWB,SHA,UMIP,PKU,IBPB,IBRS,STIBP,SSBD,XSAVEOPT,XSAVEC,XGETBV1,XSAVES
cpu2: 32KB 64b/line 8-way D-cache, 32KB 64b/line 8-way I-cache, 512KB 64b/line 
8-way L2 cache, 16MB 64b/line 16-way L3 cache
cpu2: smt 0, core 1, package 0
cpu3 at mainbus0: apid 3 (application processor)
cpu3: AMD Ryzen 7 PRO 6850U with Radeon Graphics, 2700.01 MHz, 19-44-01
cpu3: 

Re: mfs reported full, but empty

2020-08-21 Thread Philippe Meunier
Todd C. Miller wrote:
>This can happen when a process opens a file,
>unlinks it, and continues to write to it.

I used to have a small (32MB) mfs for /tmp, until I switched from Firefox
to Chromium.  Then suddenly I started having "file system full" errors all
the time, even though my /tmp looked empty.  I'm not sure what chromium is
doing in /tmp but it does store there a good number of files which are
immediately unlinked.  I ended up just getting rid of the mfs...
(Obviously, whether chromium is the source of the OP's problem or not, I do
not know.)

> $ fstat -f /tmp

$ man fstat
[...]
 INUM   The inode number of the file.  It will be followed by an asterisk
(‘*’) if the inode is unlinked from disk.
[...]
$ fstat -f /tmp | fgrep '*' 
meunier  chrome 58879   21 /  235858* -rw---   rwp4
meunier  chrome 58879   23 /  237871* -rw---   rwp  1048576
meunier  chrome 58879   25 /  237872* -rw---   rwp65536
meunier  chrome 58879   27 /  237158* -rw---   rwp65536
meunier  chrome 58879   28 /  235805* -rw---   rwp  144
meunier  chrome 58879   29 /  237213* -rw---   rwp65536
meunier  chrome 58879   30 /  235809* -rw---   rwp  1048576
meunier  chrome 58879   31 /  235806* -rw---   rwp65536
meunier  chrome 58879   37 /  237866* -rw---   rwp  144
meunier  chrome 65026   26 /  235798* -rw---   rwp  144
meunier  chrome 65026   36 /  237208* -rw---   rwp  4198400
meunier  chrome 65026   40 /  237695* -rw---rp  1048576
meunier  chrome 42745   21 /  235805* -rw---   rwp  144
meunier  chrome 42745   22 /  235809* -rw---   rwp  1048576
meunier  chrome 42745   23 /  235806* -rw---   rwp65536
meunier  chrome 42745   24 /  237196* -rw---   rwp  4198400
meunier  chrome 15292   22 /  235812* -rw---   rwp  144
meunier  chrome 15292   23 /  235823* -rw---   rwp  1048576
meunier  chrome 15292   24 /  235837* -rw---   rwp65536
meunier  chrome 12742   21 /  237866* -rw---   rwp  144
meunier  chrome 12742   23 /  237871* -rw---   rwp  1048576
meunier  chrome 12742   24 /  235829* -rw---   rwp  4198400
meunier  chrome 12742   25 /  237872* -rw---   rwp65536
meunier  chrome 61975   35 /  233861* -rw---rp   131072
meunier  chrome 61975   36 /  235858* -rw---   rwp4
meunier  chrome 61975   55 /  234368* -rw---rp   131060
meunier  chrome 61975   59 /  234368* -rw---rp   131060
meunier  chrome 61975   81 /  234451* -rw---rp30792

Philippe




Re: Request for recommendation - encryption and signature for file backup

2020-01-05 Thread Philippe Meunier
Aham Brahmasmi wrote:
>If I am not wrong, the verification should fail.

If you have a system that uses private / public signing keys then, yes,
you're correct.

But:

1) In my opinion it's probably overkill for just doing backups.  As I said
in my previous email, just using symmetric encryption and encrypting in
advance the few files you really care about is probably good enough and
simpler.

2) You'll have to remember to encrypt your private signing key (using some
symmetric encryption like aes256) before you make a backup of it.

>Let us assume I get access to the download server and I replace the
>perl based installer with a rust based installer in the bsd.rd. I also
>change the SHA256.sig file. I do not think I will fool anybody who uses
>signify to verify the all-new-improved-rust-based-installer bsd.rd with
>the base.pub.

That's right, because the public keys are already in /etc/signify and the
signature verification would fail.  The use of public / private keys here
is necessary because files are distributed to other people and these other
people must not have access to the private key.  In your case there is no
"other people" so using public / private keys is probably more than you
need.  A simple symmetric encryption with just a password would be good
enough in my opinion (but it's only my opinion, it's up to you to decide
what's best for you).

You have to ask yourself: what are the problems that I am trying to defend
against?  Then use the simplest solution that solves those problems.  Be
practical, and don't waste time trying to defend against threats which are
only theoretical.

>For files like compressed database backups, I am not sure I can
>determine whether a file has been correctly decrypted or not by looking
>at whether the result looks like random garbage.

Well, then, you have a good reason to use signatures.  Note that it still
does not require a public / private key system.  You could just compute a
hash of your DB (before encryption) and then store the hash on your backup
system (no need to encrypt the hash) together with the encrypted DB
(encrypted using symmetric encryption and a password).  Then later you
would:

1) decrypt the DB
2) compute the hash of the decrypted DB and check that it matches the hash
from the backup system.

Note that in that case the hash must be created *before* you encrypt the
DB, not after, otherwise you will not be able to detect a change done to
both the file and the hash on the backup system (as I said in my previous
email).

Anyway, it's up to you to decide what you want to do and whether you need a
hash and / or public / private keys, but my advice is to keep your system
as simple as possible.

Philippe




Re: Request for recommendation - encryption and signature for file backup

2020-01-04 Thread Philippe Meunier
>Aham Brahmasmi wrote:
>> In my limited understanding, to securely backup and restore a file, the
>> steps are:
>> 
>> To backup:
>> Step 1 - encrypt the file using a tool
>> Step 2 - sign the encrypted file using a tool
>> Step 3 - backup the signature and the encrypted file
>> 
>> To restore:
>> Step 1 - verify the encrypted backup with its signature
>> If Step 1 exits with success,
>> Step 2 - decrypt backup to file
>> If Step 2 exits with success,
>> Step 3 - use file to restore

The signature verification step is useless: if someone can change an
encrypted file on your backup system then they can change the corresponding
signature file on the same backup system too.

If you use (symmetric) encryption then there is probably no need for a
signature in your simple use case anyway: if the encrypted file correctly
decrypts (which is usually easy to tell for data files like text or images)
with the password that only you know then you can assume that nobody
changed the content of the encrypted file on your backup system.  If
someone changed the content of the encrypted file on your backup system
then, when you try to decrypt it, either the decrypt will fail or the
result will look like random garbage (hence the "usually easy" above).

If your goal is just to prevent people from looking at the content of your
file if they somehow access your backup system then encryption is really
all you need.  If you're worried that people might actively try to attack
you through your backup system then you have bigger problems which are
probably beyond what random people on a mailing list can help you with...

Roderick wrote:
>I do use openssl for encrypting files in my laptop.

So do I.  I only encrypt the 0.001% of files that are really important and
then those files are encrypted on my computer too, not just on the backup
system (because if a file is important enough to be encrypted on your
backup system then it's probably important enough to be encrypted on your
computer too).  Something like:

openssl enc -aes256 -e < foo > foo.aes256

then I delete foo.  (To decrypt use the -d option instead of -e; and read
carefully the openssl(1) man page before you type the command above because
you have no reason to trust me, right?)  Then I do backups without worrying
about whether a file is encrypted or not.  YMMV.

Philippe




Re: Unison on 6.6 - compatibility

2019-11-12 Thread Philippe Meunier
Steven Surdock wrote:
>I've tried various combinations of Unison on both ends to no avail.

Yes, unison has always been very peculiar about which other version of
unison it works with.  Nowadays unison is also in "bug fixes only" mode it
seems, and the developers now apparently only ever test the latest version
of unison with the latest version of ocaml; for any other combination
you're on your own.

>+ Keep the host at 6.5 (until Unison Window's binaries catch up.)

I don't know where you got those Windows binaries but IMHO you're better
off updating OpenBSD to 6.6 and creating your own Windows binaries.

>+ Compile Unison on Windows with a compatible OCAML.

That's what I did.  Get cygwin (with gcc), compile the latest version of
ocaml (4.09.0), then compile the latest version of unison (use git or get
the zip file for the latest version directly from github.com; do not try to
use previous official releases of unison because they won't work with the
latest version of ocaml).  When compiling unison you will get some warnings
about deprecated APIs but it worked fine for me in the end.

FYI, I ended up doing the same thing on Linux too (because I like pain,
apparently) and it worked fine too.

>+ Build Unison on 6.6 with a lower OCAML version (4.07 seems to work.)

You can try that too but you'll basically be on your own if something
breaks: the unison devs will just tell you to upgrade.

Philippe




startx on OpenBSD 6.6

2019-11-10 Thread Philippe Meunier
Theo de Raadt wrote:
>We are pleased to announce the official release of OpenBSD 6.6.
[...]
>o Made startx(1) and xinit(1) work again on modern systems using
>  inteldrm(4), radeondrm(4) and amdgpu(4).

So what exactly is a "modern system"?  Or, put another way, how does one
differenciate between "I tried startx(1) but it failed because my system is
not modern" and "I tried startx(1) but it failed because somehow I screwed
up my config"?

Thanks,

Philippe


OpenBSD 6.6 (GENERIC) #0: Sat Oct 26 05:57:51 MDT 2019
r...@syspatch-66-i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC
real mem  = 1063600128 (1014MB)
avail mem = 1028542464 (980MB)
mpath0 at root
scsibus0 at mpath0: 256 targets
mainbus0 at root
bios0 at mainbus0: date 05/29/07, BIOS32 rev. 0 @ 0xfd740, SMBIOS rev. 2.33 @ 
0xe0010 (64 entries)
bios0: vendor IBM version "70ET69WW (1.29 )" date 05/29/2007
bios0: IBM 1875E5U
acpi0 at bios0: ACPI 3.0
acpi0: sleep states S0 S3 S4 S5
acpi0: tables DSDT FACP SSDT ECDT TCPA APIC MCFG BOOT
acpi0: wakeup devices LID_(S3) SLPB(S3) UART(S3) EXP0(S4) EXP1(S4) EXP2(S4) 
EXP3(S4) PCI1(S4) USB0(S3) USB1(S3) USB3(S3) USB7(S3) AC9M(S4)
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpiec0 at acpi0
acpimadt0 at acpi0 addr 0xfee0: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: Intel(R) Pentium(R) M processor 1.60GHz ("GenuineIntel" 686-class) 1.60 
GHz, 06-0d-08
cpu0: 
FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,TM,PBE,EST,TM2,NXE,PERF,MELTDOWN
mtrr: Pentium Pro MTRR support, 8 var ranges, 88 fixed ranges
cpu0: apic clock running at 133MHz
ioapic0 at mainbus0: apid 1 pa 0xfec0, version 20, 24 pins, remapped
acpimcfg0 at acpi0
acpimcfg0: addr 0xe000, bus 0-255
acpimcfg0: addr 0x0, bus 0-0
acpiprt0 at acpi0: bus 0 (PCI0)
acpiprt1 at acpi0: bus 2 (EXP0)
acpiprt2 at acpi0: bus -1 (EXP1)
acpiprt3 at acpi0: bus 3 (EXP2)
acpiprt4 at acpi0: bus -1 (EXP3)
acpiprt5 at acpi0: bus 4 (PCI1)
acpicpu0 at acpi0: C1 (unknown FFH class 0): !C3(250@85 io@0x1015), !C2(500@1 
io@0x1014), C1(@1 halt!), PSS
acpipwrres0 at acpi0: PUBS, resource for USB0, USB1, USB7
acpitz0 at acpi0: critical temperature is 99 degC
acpibtn0 at acpi0: LID_
acpibtn1 at acpi0: SLPB
"PNP0A08" at acpi0 not configured
acpicmos0 at acpi0
"IBM0071" at acpi0 not configured
"NSC1100" at acpi0 not configured
acpibat0 at acpi0: BAT0 model "IBM-92P1091" serial  1313 type LION oem 
"Panasonic"
acpiac0 at acpi0: AC unit online
acpithinkpad0 at acpi0
acpidock0 at acpi0: DOCK not docked (0)
acpivideo0 at acpi0: VID_
bios0: ROM list: 0xc/0xf600! 0xcf800/0x1600 0xd1000/0x1000 0xdc000/0x4000! 
0xe/0x1
cpu0: Enhanced SpeedStep 1597 MHz: speeds: 1600, 1333, 1066, 800 MHz
pci0 at mainbus0 bus 0: configuration mode 1 (bios)
pchb0 at pci0 dev 0 function 0 "Intel 82915GM Host" rev 0x03
inteldrm0 at pci0 dev 2 function 0 "Intel 82915GM Video" rev 0x03
drm0 at inteldrm0
intagp0 at inteldrm0
agp0 at intagp0: aperture at 0xb000, size 0x1000
inteldrm0: apic 1 int 16
"Intel 82915GM Video" rev 0x03 at pci0 dev 2 function 1 not configured
ppb0 at pci0 dev 28 function 0 "Intel 82801FB PCIE" rev 0x03: apic 1 int 20
pci1 at ppb0 bus 2
bge0 at pci1 dev 0 function 0 "Broadcom BCM5751M" rev 0x11, BCM5750 B1 
(0x4101): apic 1 int 16, address 00:10:c6:e1:f8:03
brgphy0 at bge0 phy 1: BCM5750 10/100/1000baseT PHY, rev. 0
ppb1 at pci0 dev 28 function 2 "Intel 82801FB PCIE" rev 0x03: apic 1 int 22
pci2 at ppb1 bus 3
uhci0 at pci0 dev 29 function 0 "Intel 82801FB USB" rev 0x03: apic 1 int 16
uhci1 at pci0 dev 29 function 1 "Intel 82801FB USB" rev 0x03: apic 1 int 17
uhci2 at pci0 dev 29 function 2 "Intel 82801FB USB" rev 0x03: apic 1 int 18
uhci3 at pci0 dev 29 function 3 "Intel 82801FB USB" rev 0x03: apic 1 int 19
ehci0 at pci0 dev 29 function 7 "Intel 82801FB USB" rev 0x03: apic 1 int 19
usb0 at ehci0: USB revision 2.0
uhub0 at usb0 configuration 1 interface 0 "Intel EHCI root hub" rev 2.00/1.00 
addr 1
ppb2 at pci0 dev 30 function 0 "Intel 82801BAM Hub-to-PCI" rev 0xd3
pci3 at ppb2 bus 4
cbb0 at pci3 dev 0 function 0 "TI PCI1510 CardBus" rev 0x00: apic 1 int 16
ath0 at pci3 dev 2 function 0 "Atheros AR5212" rev 0x01: apic 1 int 21
ath0: AR5213A 5.9 phy 4.3 rf5112a 3.6 eeprom 4.8, WOR01W, address 
00:14:a4:72:72:c6
cardslot0 at cbb0 slot 0 flags 0
cardbus0 at cardslot0: bus 5 device 0 cacheline 0x8, lattimer 0xb0
pcmcia0 at cardslot0
auich0 at pci0 dev 30 function 2 "Intel 82801FB AC97" rev 0x03: apic 1 int 22, 
ICH6
ac97: codec id 0x41445374 (Analog Devices AD1981B)
ac97: codec features headphone, 20 bit DAC, No 3D Stereo
audio0 at auich0
"Intel 82801FB Modem" rev 0x03 at pci0 dev 30 function 3 not configured
ichpcib0 at pci0 dev 31 function 0 "Intel 82801FBM LPC" rev 0x03: PM disabled
pciide0 at pci0 dev 31 function 2 "Intel 82801FBM SATA" rev 0x03: DMA, channel 
0 wired to compatibility, channel 1 wired to compatibility
wd0 at pciide0 channel 0 drive 0: 
wd0: 16-sector PIO, LBA, 57231MB, 

Re: Keeping clear out of history

2018-07-31 Thread Philippe Meunier
Ken M wrote:
># I wish this worked
># bind -m '^L'=clear'^J';sed -i '$d' $HISTFILE

You need to make sure that the sed command is inside the argument of bind.
Something like this:

bind -m '^L=^Uclear;sed -i \$d "$HISTFILE"^J^Y'

The ^Y is just there to paste back the current line content when you press
^L in the middle of an existing line; the double quotes are there in case
$HISTFILE contains a space.

Note that, even if you change $HISTFILE, the clear command will still
appear in ksh's history when you press the up arrow, so I'm not sure what
you are trying to do is worth the trouble.

Cheers,

Philippe




inteldrm(4) regression from 6.1 to 6.2: wrong console resolution

2018-01-17 Thread Philippe Meunier
Hello,

I just upgraded a Thinkpad T43 from OpenBSD 6.1 release to 6.2 release and
now the console resolution is not computed correctly anymore so only the
upper left part of the screen is actually used (very similar to what is
described here: https://marc.info/?l=openbsd-misc=150825563609653).  X11
works fine.

$ doas wsconsctl | egrep display
doas (meun...@t43.my.domain) password: 
wsconsctl: Use explicit arg to view keyboard.map.
display.type=inteldrm
display.width=848
display.height=480
display.depth=32
display.emulations=vt100
display.screentypes=std
display.focus=4
display.screen_on=250
display.screen_off=0
display.vblank=off
display.kbdact=on
display.msact=on
display.outact=on

$ xrandr

 
Screen 0: minimum 8 x 8, current 1024 x 768, maximum 32767 x 32767
LVDS1 connected 1024x768+0+0 (normal left inverted right x axis y axis) 0mm
x 0mm
   1024x768  60.00*+
   800x600   60.3256.25  
   640x480   59.94  
TV1 disconnected (normal left inverted right x axis y axis)
VGA1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)

I don't have any /etc/wsconsctl.conf.

The dmesg output for 6.1 and 6.2 are below, and here's the diff:

$ diff dmesg*   

 
1,3c1,3
< OpenBSD 6.2 (GENERIC) #2: Sun Dec 10 20:46:13 CET 2017
< r...@syspatch-62-i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC
< cpu0: Intel(R) Pentium(R) M processor 1.60GHz ("GenuineIntel" 686-class) 1.60 
GHz
---
> OpenBSD 6.1 (GENERIC) #17: Thu Aug  3 16:54:00 CEST 2017
> rob...@syspatch-61-i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC
> cpu0: Intel(R) Pentium(R) M processor 1.60GHz ("GenuineIntel" 686-class) 799 
> MHz
6c6
< avail mem = 1029193728 (981MB)
---
> avail mem = 1030520832 (982MB)
24d23
< , remapped to apid 1
37a37
> "PNP0303" at acpi0 not configured
38a39
> "PNP0501" at acpi0 not configured
47c48
< cpu0: Enhanced SpeedStep 1597 MHz: speeds: 1600, 1333, 1066, 800 MHz
---
> cpu0: Enhanced SpeedStep 799 MHz: speeds: 1600, 1333, 1066, 800 MHz
55c56
< inteldrm0: 848x480, 32bpp
---
> inteldrm0: 1024x768, 32bpp
111c112
< pms0: Synaptics touchpad, firmware 5.9, 0x2c6ab1 0x0
---
> pms0: Synaptics touchpad, firmware 5.9
145c146
< Wed Jan 17 12:59:45 CST 2018
---
> Sun Aug 20 00:03:54 CST 2017

It's not really a big deal but is there a way to fix this?

$ doas wsconsctl display.width=1024 display.height=768 
doas (meun...@t43.my.domain) password: 
wsconsctl: display.width: read only
wsconsctl: display.height: read only

Thank you.

Philippe



OpenBSD 6.1 (GENERIC) #17: Thu Aug  3 16:54:00 CEST 2017
rob...@syspatch-61-i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC
cpu0: Intel(R) Pentium(R) M processor 1.60GHz ("GenuineIntel" 686-class) 799 MHz
cpu0: 
FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,TM,PBE,NXE,EST,TM2,PERF
real mem  = 1063600128 (1014MB)
avail mem = 1030520832 (982MB)
mpath0 at root
scsibus0 at mpath0: 256 targets
mainbus0 at root
bios0 at mainbus0: date 05/29/07, BIOS32 rev. 0 @ 0xfd740, SMBIOS rev. 2.33 @ 
0xe0010 (64 entries)
bios0: vendor IBM version "70ET69WW (1.29 )" date 05/29/2007
bios0: IBM 1875E5U
acpi0 at bios0: rev 2
acpi0: sleep states S0 S3 S4 S5
acpi0: tables DSDT FACP SSDT ECDT TCPA APIC MCFG BOOT
acpi0: wakeup devices LID_(S3) SLPB(S3) UART(S3) EXP0(S4) EXP1(S4) EXP2(S4) 
EXP3(S4) PCI1(S4) USB0(S3) USB1(S3) USB3(S3) USB7(S3) AC9M(S4)
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpiec0 at acpi0
acpimadt0 at acpi0 addr 0xfee0: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
mtrr: Pentium Pro MTRR support, 8 var ranges, 88 fixed ranges
cpu0: apic clock running at 133MHz
ioapic0 at mainbus0: apid 1 pa 0xfec0, version 20, 24 pins
acpimcfg0 at acpi0 addr 0xe000, bus 0-255
acpiprt0 at acpi0: bus 0 (PCI0)
acpiprt1 at acpi0: bus 2 (EXP0)
acpiprt2 at acpi0: bus -1 (EXP1)
acpiprt3 at acpi0: bus 3 (EXP2)
acpiprt4 at acpi0: bus -1 (EXP3)
acpiprt5 at acpi0: bus 4 (PCI1)
acpicpu0 at acpi0
C1: unknown FFH class 0: !C3(250@85 io@0x1015), !C2(500@1 io@0x1014), C1(@1 
halt!), PSS
acpipwrres0 at acpi0: PUBS, resource for USB0, USB1, USB7
acpitz0 at acpi0: critical temperature is 99 degC
acpibtn0 at acpi0: LID_
acpibtn1 at acpi0: SLPB
"PNP0303" at acpi0 not configured
"IBM0057" at acpi0 not configured
"PNP0501" at acpi0 not configured
"PNP0400" at acpi0 not configured
"NSC1100" at acpi0 not configured
acpibat0 at acpi0: BAT0 model "IBM-92P1091" serial  1313 type LION oem 
"Panasonic"
acpiac0 at acpi0: AC unit online
acpithinkpad0 at acpi0
acpidock0 at acpi0: DOCK not docked (0)
acpivideo0 at acpi0: VID_
bios0: ROM list: 0xc/0xf600! 0xcf800/0x1600 

Re: Writing "ones" instead of "zeroes" when wiping disk

2018-01-12 Thread Philippe Meunier
Nick Holland wrote:
>Another answer to your question might be to change those zeros to ones.
>One way to do that:
>
># tr "\0" "\377" 

Re: xterm(1) changing UTF-8 characters when copy-pasting?

2017-12-01 Thread Philippe Meunier
Anthony J. Bentley wrote:
>I was internally debating this earlier. The bug is already exposed by
>any combining characters that don't have precomposed forms. It also
>doesn't show up with the default (i.e. non TrueType) fonts. Given that
>and how unfriendly the precomposition behavior is, I think disabling it
>is still reasonable.

I'd agree with that.  TrueType fonts are not the default.  I think it's
more important to get copy-paste to work the way one would expect it to
work (even if it displays the characters the wrong way).

Philippe




Re: xterm(1) changing UTF-8 characters when copy-pasting?

2017-12-01 Thread Philippe Meunier
Anthony J. Bentley wrote:
>Philippe Meunier writes:
>> - When the precompose resource is set to false, copy-pasting the result of
>>   printf "e\xcc\x81\n" never works correctly in xterm, regardless of
>>   whether I use TrueType fonts or not.  xterm copy-pastes the correct
>>   sequence of bytes but that sequence is not displayed correctly.  That's a
>>   bug in xterm.
>
>I get slightly different results: with TrueType fonts enabled, LC_CTYPE
>set to en_US.UTF-8, and precompose disabled, accents are not displayed,
>but they do copy and paste correctly. I tested this on a fresh install as
>well as my desktop. I haven't been able to trigger the results you're
>getting (best guess: your LC_CTYPE is unset or set funny? But I don't get
>the same results even then).

Strange.  I have:

$ set | egrep -i 'utf|xterm'
LC_CTYPE=en_US.UTF-8
TERM=xterm
XTERM_LOCALE=en_US.UTF-8
XTERM_SHELL=/bin/ksh
XTERM_VERSION='XTerm/OpenBSD(327)'

and even with just this:

$ xrdb -query
xterm*precompose:   false

and TrueType enabled, then accents are not displayed and copy-paste does
not work: I get an 'e' character followed by another character which is a
question mark inside a circle.

Philippe




Re: xterm(1) changing UTF-8 characters when copy-pasting?

2017-12-01 Thread Philippe Meunier
Ingo Schwarze wrote:
>Hum, i don't doubt your analysis.  But now i don't understand why
>uxterm(1) works for Allan and plain xterm(1) doesn't...

Re-reading Allan's email, it's not clear to me whether he did his tests
with the precompose resource set to true or false.  If using the default
value of true then:

- Copy-pasting the result of printf "e\xcc\x81\n" works correctly in xterm,
  regardless of whether I use TrueType fonts or not.  That's because, as
  pointed out by Ingo, xterm rewrites e\xcc\x81 into \xc3\xa9.  That's the
  reason why this whole discussion started (and preventing the rewrite is
  then the reason why setting the precompose resource to false makes
  sense).

- When using TrueType fonts, printf "e\xcc\x81\n" shows the accent.  This
  is with the precompose resource set to its default true value.
  Interestingly, when the precompose resource is set to false and TrueType
  fonts are used, the same printf "e\xcc\x81\n" does not show the accent
  (as indicated in one of the my previous emails).  So it looks like this
  is not just a font problem after all but another bug (which Anthony
  actually already pointed out in his second email).

So my conclusions so far are:

- Allan probably did his tests with the precompose resource set to its
  default true value.  It's either that or there is some as yet unknown
  extra factor that makes a difference in the results between him and me.

- When the precompose resource is set to false, copy-pasting the result of
  printf "e\xcc\x81\n" never works correctly in xterm, regardless of
  whether I use TrueType fonts or not.  xterm copy-pastes the correct
  sequence of bytes but that sequence is not displayed correctly.  That's a
  bug in xterm.

- In addition, when the precompose resource is set to false and TrueType
  fonts are used, the result of printf "e\xcc\x81\n" itself is wrong (even
  before trying to copy-paste it): od(1) shows that the correct sequence of
  bytes is printed but it is displayed without accent.  That's another bug
  in xterm.  The result is displayed correctly when the precompose resource
  is set to true.

Philippe




Re: xterm(1) changing UTF-8 characters when copy-pasting?

2017-11-30 Thread Philippe Meunier
Allan Streib wrote:
>Are you using xterm(1) or uxterm(1)?

uxterm does not exist anymore on OpenBSD 6.1:
https://www.openbsd.org/faq/upgrade61.html

Philippe




Re: xterm(1) changing UTF-8 characters when copy-pasting?

2017-11-30 Thread Philippe Meunier
Anthony J. Bentley wrote:
>I get the same result, but only when using TrueType fonts (default or no).

If I use TrueType fonts:

$ printf "e\xcc\x81\n"

only shows the letter 'e', and when I try to copy-paste it I get a letter
'e' followed by a question mark inside a circle.  If I then redraw the line
I get an 'e' by itself but od(1) shows that it is still e\xcc\x81.

Using TrueType fonts:

$ printf "\xc3\xa9\n"

works fine and I can copy-paste the accented 'e' without problem.



Without TrueType fonts:

$ printf "e\xcc\x81\n"

works fine but when I try to copy-paste the accented 'e' I get a letter 'e'
followed by a question mark inside a circle.  If I then redraw the line I
get the correct accented 'e' again (which od(1) shows is still e\xcc\x81).

Without TrueType fonts:

$ printf "\xc3\xa9\n"

works fine and I can copy-paste the accented 'e' without problem.



So there seems to be two problems:

- Copy-pasting the result of printf "e\xcc\x81\n" never works correctly in
  xterm, regardless of whether I use TrueType fonts or not.  xterm
  copy-pastes the correct sequence of bytes but that sequence is not
  displayed correctly.  That's the same problem I noticed in my previous
  email.

- When using TrueType fonts, printf "e\xcc\x81\n" does not show the accent.

On a note related to this second problem, I never use TrueType fonts in
xterm anyway because then xterm can't display Thai or Chinese or Korean
characters (at least with the default font; I haven't tried to use any
other font).  So I suspect that this second problem is more a font problem
than an xterm bug.

Here's my current config:

$ xrdb -query
xterm*background:   black
xterm*foreground:   white
xterm*metaSendsEscape:  true
xterm*multiScroll:  true
xterm*precompose:   false
xterm*saveLines:256
xterm*scrollBar:true
xterm*scrollKey:true
xterm*scrollTtyOutput:  false
xterm*utf8Title:true
xterm*utmpInhibit:  true
xterm*visualBell:   true

and:

$ set | egrep -i utf
LC_CTYPE=en_US.UTF-8
XTERM_LOCALE=en_US.UTF-8

Philippe




Re: xterm(1) changing UTF-8 characters when copy-pasting?

2017-11-29 Thread Philippe Meunier
Anthony J. Bentley wrote:
>   precompose (class Precompose)

Thanks!  That makes xterm work (almost) as expected:

$ ls
Thérèse
$ ls | od -c
000T   h   e 314 201   r   e 314 200   s   e  \n
014
$ cp Thérèse Thérèse
cp: Thérèse and Thérèse are identical (not copied).

The first filename in the cp command above is created using ksh's
auto-completion and the second filename is created by copy-pasting
the first filename.  So xterm doesn't recompose the characters anymore.

The strange part is that, when I copy the first filename and paste
it to become the second filename, the second filename is shown without
any accent, even though the first and second filenames are now the exact
same sequence of bytes (I checked using od(1)).  So on the command line
it actually looks like this:

$ cp Thérèse Therese
cp: Thérèse and Thérèse are identical (not copied).

which looks wrong but works as expected.  I tried to play with various
things like the allowPasteControls resource but to no avail.  It looks
like an xterm bug to me but at this point I'm not even sure of that...
Anyone has any clue?

Thanks,

Philippe





Re: xterm(1) changing UTF-8 characters when copy-pasting?

2017-11-29 Thread Philippe Meunier
Ingo Schwarze wrote:
>Philippe Meunier wrote:
>> $ ls
>> Thérèse
>
>That's a bad idea.  Do not use non-ASCII bytes in file names.

That's a nice thought but in practice I have some files on that machine
with names written in French, Thai, Chinese, Korean, and Japanese, and for
some of these files renaming is not an option for work reasons.  I somehow
doubt that I'm the only one in such a situation.

>In this respect, OpenBSD is better than other operating systems.
>The problem is mostly hidden on OpenBSD because OpenBSD supports
>UTF-8 only.

Yes, I've noticed that the UTF-8 support in OpenBSD has become much nicer
in recent years.  My thanks to the devs who did that :-)

>That's called "canonical composition" in Unicode.

*sigh*  I see.  Well, I learned something new today.  Thanks for the info.

>It's certainly not ksh(1) because our ksh is not fully multibyte-
>character aware on purpose, but deliberately has only limited
>multibyte-character support.

Actually, since you brought this up, I wish ksh had fuller multibyte
character support.  As you say above the problem is mostly hidden and most
of the time it happens to just work, but, for example, trying to delete
double-wide Korean characters (well, syllables, really, which are *all*
double-wide) messes up the command line: the double-wide characters are
correctly deleted but the cursor moves left by only one position for each
delete which means that very quickly I lose track of which characters I'm
actually deleting and I'm forced to redraw the line.  Anyway, at this point
it's mostly anecdotal; most things work out of the box.

Philippe




xterm(1) changing UTF-8 characters when copy-pasting?

2017-11-29 Thread Philippe Meunier
Hello,

I've noticed something unexpected when copy-pasting UTF-8 characters in
xterm: xterm seems to change some of the characters into something
different but visually similar.  Here's an example (using ksh):

$ uname -a
OpenBSD foo.my.domain 6.1 GENERIC#19 i386
$ ls
Thérèse
$ ls | od -c
000T   h   e 314 201   r   e 314 200   s   e  \n
014
$ cp Thérèse Thérèse

This copy command is typed as follows: type 'cp ', press tab for ksh to
auto-complete the first filename, another space, then use the mouse to
copy-paste the first filename into xterm to get the second filename.
The cp command works without any error.  The result is:

$ ls
Thérèse Thérèse
$ ls | od -c
000T   h   e 314 201   r   e 314 200   s   e  \n   T   h 303 251
020r 303 250   s   e  \n
026

Note how the two filenames look exactly the same but are actually different
byte sequences...  So it looks like xterm is changing e 314 201 into 303 251
and e 314 200 into 303 250 when copy-pasting... which was rather a surprise
to me.  I'm pretty sure the problem is with xterm, not with ksh, because
the same thing happens with bash (using a similar xterm and using bash
through ssh to a Linux machine).

Is this normal / expected?

For info:

$ cat .Xdefaults
xterm*background:   black
xterm*foreground:   white
xterm*metaSendsEscape:  true
xterm*multiScroll:  true
xterm*saveLines:256
xterm*scrollBar:true
xterm*scrollKey:true
xterm*scrollTtyOutput:  false
xterm*utf8Title:true
xterm*utmpInhibit:  true
xterm*visualBell:   true
$ set | egrep -i utf
LC_CTYPE=en_US.UTF-8
XTERM_LOCALE=en_US.UTF-8

Thanks,

Philippe





Re: Android development on OpenBSD

2017-11-02 Thread Philippe Meunier
Jan Stary wrote:
>What do people use to develop Android apps on OpenBSD?

As far a I know, no one uses OpenBSD to develop Android apps.  The only
Android related software available on OpenBSD is adb (available as a
package).

>I would very much rather use my favorite IDE of vim+make
>and just write C code and run it through NDK

The NDK is not available on OpenBSD.

On a more philosophical level, given that OpenBSD tends to be on the lean
side of life and Android tends to be on the bloatware side, I doubt anyone
will ever bother to port any Android tool chain to OpenBSD.  But feel free
to give it a try.

Philippe




Re: Tar and bzip2 maximum compression

2017-10-09 Thread Philippe Meunier
leo_...@volny.cz wrote:
>% tar cvvf -

On a related note, it would be nice if tar(1)'s man page indicated that the
-v option can be specified more than once to get extra information.  Until
seeing this discussion thread I had never realized this was possible.

Philippe




Re: Full disk encryption questions

2017-08-19 Thread Philippe Meunier
Ted Unangst wrote:
>Philippe Meunier wrote:
>> - is the panic intended (well, known to the developers and considered
>> normal; I hesitate to call it a feature) or is it an oversight?
>
>no, nothing bioctl does should kill init like that.

Well, it does, and it's reproducible.

>> - I would have thought that, once the softraid volume has been created, its
>> metadata wouldn't need to change (unless the passphrase is changed, or the
>> volume is roaming, as seen above). Any idea why part of it gets trashed?
>
>that's true, but maybe a stray write killed it?

It happens even in single-user mode when only / is mounted read-only and
only init and a shell are running.

Here are all the gory details, if you want them, including the ddb trace
when the kernel panics.

# wget http://ftp.jaist.ac.jp/pub/OpenBSD/6.1/amd64/SHA256.sig
# wget http://ftp.jaist.ac.jp/pub/OpenBSD/6.1/amd64/install61.fs
# signify -Cp /etc/signify/openbsd-61-base.pub -x SHA256.sig install61.fs
Signature Verified
install61.fs: OK
# dd if=install61.fs of=/dev/rsd1c bs=1m

Then boot from install USB on the t61 and go to shell:

# dd if=/dev/random of=/dev/rwd0c bs=1m
# fdisk -iy wd0
# disklabel -E wd0
a a
64
*
RAID
w
q
# bioctl -c C -l wd0a softraid0
New passphrase:
Re-type passphrase:
sd1 at scsibus2 targ 1 lun 0: <OPENBSD, SR CRYPTO, 006> SCSI2 0/direct fixed
sd1: 114470MB, 512 bytes/sector, 234435008 sectors
softraid0: CRYPTO volume attached as sd1
# cd /dev && sh MAKEDEV sd1
# dd if=/dev/zero of=/dev/rsd1c bs=1m count=1
# exit
I
default
System hostname = t61
Which network interface do you wish to configure = done
DNS domain name = my.domain
DNS nameservers = none
Start sshd(8) by default = no
Do you want the X Window System to be started by xenodm(1) = no
Setup a user = no
Which disk is the root disk = sd1
Use (W)hole disk MBR, whole disk (G)PT or (E)dit = W
Use (A)uto layout, (E)dit auto layout, or create (C)ustom layout = A
Which disk do you wish to initialize = done
Location of sets = disk
Is the disk partition already mounted = no
Which disk contains the install media = sd0
Which sd0 partition has the install sets = a
Pathname to the sets = 6.1/amd64
Set name(s) = done
Directory does not contain SHA256.sig. Continue without verification = yes
Location of sets = done
What timezone are you in = PRC
# reboot

Then everything works fine.  Here's the dmesg:

OpenBSD 6.1 (GENERIC.MP) #20: Sat Apr  1 13:45:56 MDT 2017
dera...@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC.MP
real mem = 1030422528 (982MB)
avail mem = 994574336 (948MB)
mpath0 at root
scsibus0 at mpath0: 256 targets
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 2.4 @ 0xe0010 (73 entries)
bios0: vendor LENOVO version "7LETD0WW (2.30 )" date 02/27/2012
bios0: LENOVO 7659AE6
acpi0 at bios0: rev 2
acpi0: sleep states S0 S3 S4 S5
acpi0: tables DSDT FACP SSDT ECDT TCPA APIC MCFG HPET SLIC BOOT ASF! SSDT SSDT 
SSDT SSDT SSDT
acpi0: wakeup devices LID_(S3) SLPB(S3) IGBE(S4) EXP0(S4) EXP1(S4) EXP2(S4) 
EXP3(S4) EXP4(S4) PCI1(S4) USB0(S3) USB1(S3) USB2(S3) USB3(S3) USB4(S3) 
EHC0(S3) EHC1(S3) [...]
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpiec0 at acpi0
acpimadt0 at acpi0 addr 0xfee0: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: Intel(R) Core(TM)2 Duo CPU T7300 @ 2.00GHz, 2194.89 MHz
cpu0: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,DTES64,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,NXE,LONG,LAHF,PERF,SENSOR
cpu0: 4MB 64b/line 16-way L2 cache
cpu0: smt 0, core 0, package 0
mtrr: Pentium Pro MTRR support, 8 var ranges, 88 fixed ranges
cpu0: apic clock running at 199MHz
cpu0: mwait min=64, max=64, C-substates=0.2.2.2.2, IBE
cpu1 at mainbus0: apid 1 (application processor)
cpu1: Intel(R) Core(TM)2 Duo CPU T7300 @ 2.00GHz, 1995.00 MHz
cpu1: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,DTES64,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,NXE,LONG,LAHF,PERF,SENSOR
cpu1: 4MB 64b/line 16-way L2 cache
cpu1: smt 0, core 1, package 0
ioapic0 at mainbus0: apid 1 pa 0xfec0, version 20, 24 pins
acpimcfg0 at acpi0 addr 0xf000, bus 0-63
acpihpet0 at acpi0: 14318179 Hz
acpiprt0 at acpi0: bus 0 (PCI0)
acpiprt1 at acpi0: bus -1 (AGP_)
acpiprt2 at acpi0: bus 2 (EXP0)
acpiprt3 at acpi0: bus 3 (EXP1)
acpiprt4 at acpi0: bus 4 (EXP2)
acpiprt5 at acpi0: bus 5 (EXP3)
acpiprt6 at acpi0: bus 13 (EXP4)
acpiprt7 at acpi0: bus 21 (PCI1)
acpicpu0 at acpi0: !C3(250@17 mwait.3@0x20), !C2(500@1 mwait.1@0x10), C1(1000@1 
mwait.1), PSS
acpicpu1 at acpi0: !C3(250@17 mwait.3@0x20), !C2(500@1 mwait.1@0x10), C1(1000@1 
mwait.1), PSS
acpipwrres0 at acpi0: PUBS, resource for USB0, USB2, USB4, EHC0, EHC1
acpitz0 at acpi0: critical temperature is 127 degC
acpitz1 at acpi0: critical temperature is 100 degC
acpibtn0 at acpi0: LID_
acpibtn1 at acpi0: SLPB
&qu

Full disk encryption questions

2017-08-17 Thread Philippe Meunier
Hello,

I've been testing full disk encryption using the softraid crypto
discipline on an old Thinkpad T61, using OpenBSD amd64 6.1-release (dmesg
below).  I just followed the FAQ: creating a wd0a RAID partition, then an
encrypted sd1 using bioctl (sd0 was the USB thumb drive I booted from),
then installed OpenBSD as usual, rebooted from the disk (sd0 was then the
encrypted partition), and everything worked great.  Very neat.

Then, out of curiosity, I did the following while the system was running:

# bioctl -d sd0

Somehow I expected a "device busy" error message and no consequences, just
like when one tries to unmount a busy file system, but instead the kernel
immediately panicked ("init died").  Well, that was a bit harsh but I guess
I only got what I asked for.

Anyway, the interesting part happened when I rebooted the machine.  Instead
of asking me for my passphrase as before, I got the following (copied by
hand):

Using drive 0, partition 0.
Loading ..
probing: pc0 mem[630K 997M a20=on]
disk: hd0+ sr0
>> OpenBSD amd64 BOOT 3.33
open(hd0a:/etc/boot.conf): Invalid argument
boot>
cannot open hd0a:/etc/random.seed: Invalid argument
booting hd0a:/bsd: open hd0a:/bsd: Invalid argument
 failed(22). will try /bsd
boot>
cannot open hd0a:/etc/random.seed: Invalid argument
booting hd0a:/bsd: open hd0a:/bsd: Invalid argument
 failed(22). will try /bsd
Turning timeout off.
boot>

So I booted from the USB thumb drive again and tried to re-attach the
softraid device:

# bioctl -c C -l /dev/wd0a softraid0
Passphrase:
sd1 at scsibus4 targ 1 lun 0:  SCSI2 0/direct fixed
sd1: 114473MB, 512 bytes/sector, 234441056 sectors
softraid0: volume sd1 is roaming, it used to be sd0, updating metadata
softraid0: volume sd1 is roaming, it used to be sd0, updating metadata
softraid0: CRYPTO volume attached as sd1
#

I was then able to fsck all the partitions on sd1 and mount them with no
apparent problem.  Re-booting from the computer's disk still failed with
the same "Invalid argument" error messages as above though.

So I guess that detaching the softraid volume while in use somehow trashed
part of the softraid metadata, enough to prevent booting but not enough to
prevent the softraid device from being re-attached.  Just for fun I wiped
the disk clean with dd and tried the whole thing a second time and got the
exact same result again.  Moral of the story: don't detach the softraid
volume while in use (duh).

Still, I have a few questions, just out of curiosity:
- is the panic intended (well, known to the developers and considered
normal; I hesitate to call it a feature) or is it an oversight?
- I would have thought that, once the softraid volume has been created, its
metadata wouldn't need to change (unless the passphrase is changed, or the
volume is roaming, as seen above). Any idea why part of it gets trashed?
- is there a way to get the computer to boot again, short of wiping the
disk with dd and starting from scratch again?

Cheers,

Philippe



OpenBSD 6.1 (GENERIC.MP) #20: Sat Apr  1 13:45:56 MDT 2017
dera...@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC.MP
real mem = 1030422528 (982MB)
avail mem = 994574336 (948MB)
mpath0 at root
scsibus0 at mpath0: 256 targets
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 2.4 @ 0xe0010 (73 entries)
bios0: vendor LENOVO version "7LETD0WW (2.30 )" date 02/27/2012
bios0: LENOVO 7659AE6
acpi0 at bios0: rev 2
acpi0: sleep states S0 S3 S4 S5
acpi0: tables DSDT FACP SSDT ECDT TCPA APIC MCFG HPET SLIC BOOT ASF! SSDT SSDT 
SSDT SSDT SSDT
acpi0: wakeup devices LID_(S3) SLPB(S3) IGBE(S4) EXP0(S4) EXP1(S4) EXP2(S4) 
EXP3(S4) EXP4(S4) PCI1(S4) USB0(S3) USB1(S3) USB2(S3) USB3(S3) USB4(S3) 
EHC0(S3) EHC1(S3) [...]
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpiec0 at acpi0
acpimadt0 at acpi0 addr 0xfee0: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: Intel(R) Core(TM)2 Duo CPU T7300 @ 2.00GHz, 2194.88 MHz
cpu0: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,DTES64,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,NXE,LONG,LAHF,PERF,SENSOR
cpu0: 4MB 64b/line 16-way L2 cache
cpu0: smt 0, core 0, package 0
mtrr: Pentium Pro MTRR support, 8 var ranges, 88 fixed ranges
cpu0: apic clock running at 199MHz
cpu0: mwait min=64, max=64, C-substates=0.2.2.2.2, IBE
cpu1 at mainbus0: apid 1 (application processor)
cpu1: Intel(R) Core(TM)2 Duo CPU T7300 @ 2.00GHz, 1995.01 MHz
cpu1: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,DTES64,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,NXE,LONG,LAHF,PERF,SENSOR
cpu1: 4MB 64b/line 16-way L2 cache
cpu1: smt 0, core 1, package 0
ioapic0 at mainbus0: apid 1 pa 0xfec0, version 20, 24 pins
acpimcfg0 at acpi0 addr 0xf000, bus 0-63
acpihpet0 at acpi0: 14318179 Hz
acpiprt0 at acpi0: bus 0 (PCI0)
acpiprt1 at acpi0: bus -1 (AGP_)
acpiprt2 at acpi0: bus 2 (EXP0)

Re: A couple of password pointers to avoid failed login(1) via cu(1)

2017-01-18 Thread Philippe Meunier
minek van wrote:
>generating a 63 character long password with random stuff
>
>tr -dc "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789 
>\!\"#$%&'()*+,-./:;<=>?@[\\\]^_\`{|}~"

Re: Why not use malloc S by default?

2016-11-23 Thread Philippe Meunier
Otto Moerbeek wrote:
>Here the difference is even bigger (about 68%). I think that shows
>enough why S isn't the default (apart from buggy third party
>software).

Fair enough.

Cheers,

Philippe



Re: Why not use malloc S by default?

2016-11-23 Thread Philippe Meunier
Otto Moerbeek wrote:
>It is not a problem of crashing or not, S does incur a performance hit
>that we are not willing accept by default.

I've seen this claim several times on this mailing list over the past
few years but does anyone have actual data about it?  How much of a
performance hit is it in practice for, say, some typical tasks
(whatever "typical" means)?  I'm asking because I've been using S on
my 10 year old laptop for 2.5 years now and I don't remember seeing any
noticeable difference (or am I just very tolerant of low performance?)

Out of curiosity, here's the result of running "time /bin/sh
/etc/daily" three times in a row with /etc/malloc.conf -> S:

5m37.69s real 0m48.49s user 0m44.67s system
5m17.96s real 0m48.06s user 0m41.99s system
5m21.30s real 0m49.89s user 0m43.91s system

(the faster second and third results are probably due to caching effects)
and with no /etc/malloc.conf:

5m04.51s real 0m45.32s user 0m30.61s system
5m07.56s real 0m46.62s user 0m31.22s system
5m05.88s real 0m45.81s user 0m30.47s system

So it's a performance hit of about 15 seconds out of more than five
minutes, so about 5%.  Not great but not something that a human would
be likely to notice without actually timing it.  Granted, /etc/daily
might not be a perfect example because it seems to be mainly I/O bound
(and my computer is not really representative of today's machines
anyway), but I'd guess that a CPU bound program would probably
allocate memory up front and have a low hit in the long run, while a
memory intensive program (say, a language interpreter) would probably
have its own GC system making the speed of malloc not so much of a
problem.  Does anyone know of a relatively common program for which S
is a human-noticeable performance hit?

Cheers,

Philippe



Re: Saw-shaped load on idle computer

2016-11-18 Thread Philippe Meunier
Clint Pachl wrote:
>But Philippe is noticing this behavior even in single user mode, right? In
>single user, init and a shell should be all that is running in userland.

Right.  Even after cold-booting straight into single user mode I still
see those weird-looking load peaks.

>If in single user, I would suspect hardware interrupting the kernel. Make
>sure your monitoring tool isn't the culprit.

In single user mode I just used: while true; do uptime; sleep 10; done

Anyway, last night I cold-booted the machine into single user mode and
let it do nothing for 8.5 hours (not even the while loop above) and
then "top -S" showed the following result:

  PID USERNAME PRI NICE  SIZE   RES STATE WAIT  TIMECPU COMMAND
  88820 root -2200K   21M sleep -   506:34  0.00% idle0
  23790 root  1000K   21M sleep acpi0 0:05  0.00% acpi0
  37552 root  1000K   21M sleep bored 0:05  0.00% systq
  15761 root  1000K   21M sleep bored 0:01  0.00% systqmp
  48025 root  1000K   21M sleep pftm  0:01  0.00% pfpurge
  0 root -1800K   21M sleep schedul   0:01  0.00% swapper
  68258 root  1000K   21M idle  usbtsk0:01  0.00% usbtask
  1 root  100  316K  160K idle  wait  0:01  0.00% init
  18103 root -1800K   21M idle  kmalloc   0:01  0.00% kmthread
[...]

So nothing out of the ordinary.  Conclusion: this is probably just yet
another case of the load not actually representing the actual CPU
usage.  Some as yet unknown kernel thread probably wakes up every
minute or so, goes into the run queue, is counted towards the load,
and then does nothing at all with the CPU...  It does make the load
look weird though.  Anyway, case closed; sorry for the noise.

Cheers,

Philippe



Saw-shaped load on idle computer

2016-11-15 Thread Philippe Meunier
Hello,

I'm just curious: what is it in the kernel that wakes up about every
minute to do some work even on a completely idle machine?  I'm asking
because xload shows some curious looking saw shaped load like this:
http://www.ccis.northeastern.edu/home/meunier/xload.jpg
That's on an idle Thinkpad T43 running OpenBSD 6.0-release.  At first
I thought it might be something like cupsd, but even after killing
daemons one by one and going to single user mode these regular peaks
still continue.  So I guess it's due to some kernel thread?  I tried
to use "top -S" but couldn't figure out the source.  Does anyone have
any idea of how to find it?

Thanks,

Philippe



Re: security(8) doesn't know about mailbox locks

2016-10-21 Thread Philippe Meunier
Kamil Cholewiński wrote:
>Try using aliases(5) instead

Okay, but still, security(8) ought not to generate bogus warnings
regardless of the method used to forward emails (and there are also
probably other ways that a lock file might end up in /var/mail, using
a .forward file just happens to be the way that made me notice the
problem).

Cheers,

Philippe



security(8) doesn't know about mailbox locks

2016-10-21 Thread Philippe Meunier
Hello,

When cron runs /etc/daily, that script runs df and netstat and the
output is sent by email to root.  On my system, emails to root are
forwarded to local user meunier using /root/.forward.  The forwarding
itself temporarily creates a lock file in /var/mail:

-rw---  1 root wheel 0 Oct 21 23:55 meunier.lock

At the same time, /etc/daily runs /usr/libexec/security.  The
check_mailboxes function in that file loops over all the files in
/var/mail and checks whether the owner of the file matches the name of
the file.  If check_mailboxes happens to be running exactly at the
same time as the system is forwarding /etc/daily's first email, then
check_mailboxes sees meunier.lock, the check for that file fails, and
the result is another email sent to root:

Running security(8):

Checking mailbox ownership.
user meunier.lock mailbox is owned by root

So I think the check_mailboxes function in /usr/libexec/security
should either skip lock files or check them in a different way...

Cheers,

Philippe



Re: Check for wxneeded option?

2016-09-07 Thread Philippe Meunier
Stuart Henderson wrote:
>Java was not linked with the wxneeded linker option in 6.0.

Okay, I tried with another program that I know does require the
wxneeded linker option and indeed 'readelf -l' then shows
OPENBSD_WXNEED.  So my original question had indeed been answered, I
was just mistakenly using the wrong example program.  Thanks everyone.

Now, just out of curiosity with regard to java: I get a "/bsd:
java(46091): mprotect W^X violation" message when I use it on
6.0-release (on a filesystem mounted with wxallowed), it's not linked
with the wxneeded option, and it still works.  How is that possible?
Doesn't that contradict the release announcement ("We are pleased to
announce the official release of OpenBSD 6.0. [...] W^X is now
strictly enforced by default; a program can only violate it if the
executable is marked with PT_OPENBSD_WXNEEDED and is located on a
filesystem mounted with the wxallowed mount(8) option.)?

Thanks,

Philippe



Re: Check for wxneeded option?

2016-09-06 Thread Philippe Meunier
Theo de Raadt wrote:
>It is probably staring you in the face.

Okay, I assume this requires -current then?  I'm using 6.0-release on
i386 and I don't see it:

$ readelf -l /usr/local/jdk-1.8.0/bin/java | egrep -i wx
$

(yes, I know that java was linked with wxneeded (I get an "mprotect W^X
violation" message in the logs when I run java), it's just an example)

Philippe



Re: Check for wxneeded option?

2016-09-06 Thread Philippe Meunier
David Coppa wrote:
>readelf -l /path/to/executable

Well, thanks, but... what should I look for in the output, exactly?

Philippe



Check for wxneeded option?

2016-09-05 Thread Philippe Meunier
Hello,

How does one check whether an existing program has been linked using
the wxneeded option or not?

I tried to play with objdump -x but I don't know what to look for in
the output...  Any help?  Thank you.

Cheers,

Philippe



Re: jot(1) changed behavior

2016-07-15 Thread Philippe Meunier
Theo Buehler wrote:
>$ jot -r -p 0 10 1 3 | sort -n | uniq -c
>33464 1
>33246 2
>33290 3

According to the man page, "in the absence of -p, the precision is the
greater of the numbers begin and end".  Since both 1 and 3 have a
precision of zero, therefore I would expect your command:

jot -r -p 0 10 1 3 | sort -n | uniq -c

to behave exactly the same way as this one:

jot -r 10 1 3 | sort -n | uniq -c

which the man page clearly indicates should produce something like:

24950 1
50038 2
25012 3
  
which is also more in line with the "generate random floating point
number and truncate to even" model which is described (not very
clearly, IMHO) in the man page.

Philippe



jot(1) changed behavior

2016-07-14 Thread Philippe Meunier
Hello,

According to jot(1)'s man page:

"$ jot -w %d -r 10 1 4 | sort -n | uniq -c
33306 1
33473 2
33221 3

Note that with random sequences, all numbers generated will be smaller
than the upper bound.  The largest value generated will be a tiny bit
smaller than the upper bound.  For floating point formats, the value
is rounded as described before being printed.  For integer formats,
the highest value printed will be one less than the requested upper
bound, because the generated value will be truncated."

The "smaller than the upper bound" part used to be correct but not
anymore:

$ uname -a
OpenBSD something.somewhere 5.9 GENERIC#1561 i386
$ jot -w %d -r 10 1 4 | sort -n | uniq -c
24729 1
25035 2
25106 3
25130 4

Looking at the cvs log for jot.c, this seems to be a known change:

"revision 1.27 [...] Internally, jot -r now uses arc4random_uniform()
whenever this is clearly possible.  In particular `jot -r 1 10 20'
yields an unbiased random number between 10 and 20 (both ends
inclusive) from the shell."

I only discovered this change today after noticing that one of my
shell scripts that used to work fine had started to fail with a low
probability: the script uses jot(1) to generate a sequence of random
array indexes, and with this change an index can now be out of bounds
with a probability of about 1/1700.  Fortunately it isn't an important
script but given the low probability of failure it wasn't exactly fun
to debug.  Anyway, I don't know which one of jot or jot's man page is
going to be fixed but I'd advocate for reverting to the previous
behavior to preserve the semantics of scripts that rely on it.

Cheers,

Philippe



Re: how to send email via Mail

2016-02-26 Thread Philippe Meunier
Jaap Bosman wrote:
>Hallo, I would like to use mail(1) for email client. [...]
>I guess email addresses have to be listed somewhere? where? How?
>ISP adresses and POP or whatever should be listed somewhere?

POP is obsolete.  Instead you want to use IMAP to read emails from
your ISP and SMTP to send emails to your ISP.  Even better is to use
IMAPS and SMTPS.  Check with your ISP what they offer...

Then install mutt(1) from packages (install mutt-sasl if your ISP
provides IMAPS and SMTPS).  Then create a $HOME/.muttrc file that
contains something like this (assuming your ISP provides IMAPS and
SMTPS):

set smtp_url = smtps://your-login-n...@smtps-server.your.isp
set from = your-login-n...@your.isp
set folder = imaps://your-login-n...@imaps-server.your.isp/

Mutt will ask you for your password when it connects to your ISP to
send or receive email.

There is a lot of information on the Internet about how to use mutt
with IMAP/IMAPS and SMTP/SMTPS...

Philippe



jdk-1.8.0 and Eclipse

2016-02-16 Thread Philippe Meunier
Hello,

I'm running OpenBSD 5.8-release generic on i386.

Has anyone managed to get Eclipse 3.2 (the one from packages) working
with jdk-1.8.0 (from packages too)?  When I try, I get the following
error message: "An error has occurred. See the log file ..." and
Eclipse dies.

The log file contains many error messages like this one:

!ENTRY org.eclipse.equinox.common 4 0 2016-02-17 02:35:28.192
[...]
org.osgi.framework.BundleException: The bundle could not be resolved. Reason: 
Missing Constraint: Bundle-RequiredExecutionEnvironment: 
CDC-1.0/Foundation-1.0,J2SE-1.3
[...]

>From my limited understanding of the problem, this seems to indicate
that there is some sort of version mismatch between Eclipse 3.2 and
jdk-1.8.0 (Eclipse 3.2 being either somehow too old, or having been
compiled using an older version of Java; I'm not sure which is the
correct reason).

I installed jdk-1.7.0 (from packages too) and that solved the problem
for now, but it would be neat if someone had a (preferably simple)
solution to getting Eclipse and jdk-1.8.0 to work together.

Thanks,

Philippe



Re: unbound(8) generating too many log messages

2016-01-15 Thread Philippe Meunier
Raf Czlonka wrote:
>How about simply disabling unbound at boot: [...]
>and then have something like this in your /etc/hostname.if:

Yes, I ended up disabling ntpd and un-enabling unbound in
/etc/rc.conf.local and then using:

/etc/rc.d/unbound -f start && /etc/rc.d/ntpd -f start

at the end of the script that I use to configure network interfaces.

Thanks.

Philippe



unbound(8) generating too many log messages

2016-01-13 Thread Philippe Meunier
Hello,

I have a laptop computer configured to use unbound(8) and ntpd(8) but
which does not have any network interface configured by default
(except lo0, obviously) since which interface needs to be configured
and how depends on where I'm using the computer.

After booting, unbound(8) and ntpd(8) both start without problem.
Then ntpd(8) automatically starts trying to contact NTP servers from
pool.ntp.org, which triggers DNS queries.  In turn unbound(8) tries to
contact root DNS servers and fails since no network interface is
configured.  Unbound(8) then logs messages to syslog:

Jan 14 10:07:58 mycomputer unbound: [2824:0] notice: sendto failed: Can't 
assign requested address
Jan 14 10:07:58 mycomputer unbound: [2824:0] notice: remote address is 
192.5.5.241 port 53

The problem is that unbound(8) generates such a pair of messages up to
20 times for each root server!  That's 2 lines * 20 times * 13 root
servers = 520 lines that end up going to syslog.  Then 15 seconds
later ntpd(8) tries again and you get another 520 lines, and so on.
This continues until a network interface is configured.  The result is
that I've accumulated over 16000 lines of log messages like the ones
above over just the past three days...

So is there a way to make unbound(8) more quiet (short of sending the
log messages to /dev/null)?

For info, this is the unbound(8) version 1.5.4 from OpenBSD
5.8-release.

Thank you,

Philippe



doas(1) and $PATH

2016-01-13 Thread Philippe Meunier
Hello,

Could someone be kind enough to explain to me the cause of the
following?

$ cat /home/meunier/bin/foo
#!/bin/ksh
echo "it works!"
$ /usr/bin/which foo
/home/meunier/bin/foo
$ foo
it works!
$ doas /usr/bin/which foo
Password:
/home/meunier/bin/foo
$ doas foo
Password:
doas: foo: command not found
$

It makes no sense to me.

The same thing happens if I first move foo to / and add / at the
beginning of $PATH, so it's not a permission problem with
/home/meunier/bin, and foo itself has permissions 777.
If I first move foo to /bin then doas(1) finds foo without problem.

For reference:

$ uname -a
OpenBSD something.somewhere 5.8 GENERIC#1066 i386
$ cat /etc/doas.conf
permit :wheel
$ egrep wheel /etc/group
wheel:*:0:root,meunier
$ doas /home/meunier/bin/foo
Password:
it works!
$

By the way, while playing with which(1) and doas(1) and $PATH, I
managed to get which(1) to core dump, twice, although I have not been
able to reproduce it reliably.  Here's gdb's output from the core
dump, for all it's worth:

$ gdb /usr/bin/which which.core
GNU gdb 6.3
[...]
This GDB was configured as "i386-unknown-openbsd5.8"...(no debugging symbols 
found)

Core was generated by `which'.
Program terminated with signal 11, Segmentation fault.
(no debugging symbols found)
Loaded symbols for /usr/bin/which
Reading symbols from /usr/lib/libc.so.80.1...done.
Loaded symbols for /usr/lib/libc.so.80.1
Reading symbols from /usr/libexec/ld.so...done.
Loaded symbols for /usr/libexec/ld.so
#0  0x1ab63feb in ?? () from /usr/bin/which
(gdb) bt
#0  0x1ab63feb in ?? () from /usr/bin/which
#1  0x87486000 in ?? ()
#2  0x3ab6303d in ?? () from /usr/bin/which
#3  0x02e6 in ?? ()
#4  0x in ?? ()
(gdb)

Thanks,

Philippe



ksh background loop behavior

2014-12-23 Thread Philippe Meunier
Hello,

I have a small ksh script that uses ps(1) inside a background loop to
monitor some process while the script does some other stuff in the
foreground.  Here is a simplified version of the script that monitors
the startx process, as an example:

#!/bin/ksh -ex
while true; do ps -lww | egrep startx | egrep --line-buffered -v egrep; sleep 
1; done 
while true; do echo XXX | egrep --line-buffered -v egrep; sleep 1; done

When I run this script:

./foo  bar2 21

I get the expected output:

+ true
+ true
+ echo XXX
+ egrep --line-buffered -v egrep
XXX
+ sleep 1
+ ps -lww
+ egrep startx
+ egrep --line-buffered -v egrep
 1000 22065  8346  17  18   0   848 4 pause   I+C00:00.02 /bin/sh 
/usr/X11R6/bin/startx /usr/X11R6/bin/startx /usr/X11R6/bin/startx 
/usr/X11R6/bin/startx
+ sleep 1
+ true
+ true
+ echo XXX
+ egrep --line-buffered -v egrep
+ ps -lww
+ egrep startx
+ egrep --line-buffered -v egrep
XXX
+ sleep 1
 1000 22065  8346  17  18   0   848 4 pause   I+C00:00.02 /bin/sh 
/usr/X11R6/bin/startx /usr/X11R6/bin/startx /usr/X11R6/bin/startx 
/usr/X11R6/bin/startx
+ sleep 1
+ true
+ echo XXX
+ egrep --line-buffered -v egrep
XXX
+ sleep 1
+ true
+ ps -lww
+ egrep startx
+ egrep --line-buffered -v egrep
 1000 22065  8346  17  18   0   848 4 pause   I+C00:00.02 /bin/sh 
/usr/X11R6/bin/startx /usr/X11R6/bin/startx /usr/X11R6/bin/startx 
/usr/X11R6/bin/startx
+ sleep 1
+ true
+ echo XXX
[...]

When I kill the script using ^C, the background loop keeps running,
since it's apparently executed as a separate process, so I have to kill
it using kill(1).  Fine.  So far so good.

Now if I modify the background loop to monitor a non-existent process
named startxBOGUS:

#!/bin/ksh -ex
while true; do ps -lww | egrep startxBOGUS | egrep --line-buffered -v egrep; 
sleep 1; done 
while true; do echo XXX | egrep --line-buffered -v egrep; sleep 1; done

and run the script again:

./foo  bar1 21

I get this unexpected output:

+ true
+ true
+ echo XXX
+ egrep --line-buffered -v egrep
XXX
+ sleep 1
+ ps -lww
+ egrep startxBOGUS
+ egrep --line-buffered -v egrep
+ true
+ echo XXX
+ egrep --line-buffered -v egrep
XXX
+ sleep 1
+ true
+ echo XXX
+ egrep --line-buffered -v egrep
XXX
+ sleep 1
+ true
+ echo XXX
+ egrep --line-buffered -v egrep
XXX
+ sleep 1
+ true
+ echo XXX
+ egrep --line-buffered -v egrep
XXX

Note how the trace information from ksh indicates that the 'ps -lww'
command now only runs once.  After killing the script using ^C, I also
notice that there is no separate process that continues running the
background loop.

So here is the question: why the difference in behavior between the two
background loops?  I don't see how changing 'egrep startx' into 'egrep
whatever' could influence the number of times the background loop
runs...  Any help?

A few more things:

- In the real script that I'm trying to write, the process that I want
  to monitor appears and disappears multiple times over several hours,
  so I need the background loop to keep working even when the process
  that I want to monitor is not around.

- I tried the same thing with bash and it exhibits the same difference
  in behavior (except that when killing the script using ^C, bash also
  kills the background loop too, if it's still running)!

- It's ksh 5.2.14 running on OpenBSD 5.6 generic stable i386.

Thanks,

Philippe



Re: ksh background loop behavior

2014-12-23 Thread Philippe Meunier
Ted Unangst wrote:
You tell ksh to exit on error.
[...]
You run a command (egrep) that exits with an error.

So correct... (head hits keyboard).  Thanks!

Philippe



Re: FYA: http://heartbleed.com/

2014-04-09 Thread Philippe Meunier
Theo de Raadt wrote:
Some other debugging toolkits get them too.  To a large extent these
come with almost no performance cost.

Is there any special reason why there is no /etc/malloc.conf by
default (linking to, say, 'S') then?

Philippe



DVD ISO and mount_udf: FSD does not lie within the partition!

2014-02-18 Thread Philippe Meunier
Hello,

I have problems mounting Windows 7 DVD ISO images on OpenBSD 5.4
stable.  For example, you can download X17-59463.iso from
http://www.mydigitallife.info/official-windows-7-sp1-iso-from-digital-river/

# ls -l X17-59463.iso  
-rw---  1 meunier  users  2564476928 Feb 16 01:24 X17-59463.iso

Then:

# vnconfig vnd0 X17-59463.iso  
# disklabel vnd0
# /dev/rvnd0c:
type: vnd
disk: GSP1RMCULFRER_EN
label: _DVD
duid: 
flags:
bytes/sector: 512
sectors/track: 100
tracks/cylinder: 1
sectors/cylinder: 100
cylinders: 50087
total sectors: 5008744
boundstart: 0
boundend: 5008744
drivedata: 0 

16 partitions:
#size   offset  fstype [fsize bsize  cpg]
  a:  50087440 ISO9660   
  c:  50087440 ISO9660   
# mount_cd9660 /dev/vnd0a /mnt 
# ls -la /mnt
total 4
dr-xr-xr-x   1 root  wheel  112 Apr 12  2011 .
drwxr-xr-x  14 root  wheel  512 Dec 31 18:44 ..
-r-xr-xr-x   1 root  wheel  135 Apr 12  2011 README.TXT
# cat /mnt/README.TXT  
This disc contains a UDF file system and requires an operating system
that supports the ISO-13346 UDF file system specification.
# umount /mnt
# mount_udf /dev/vnd0a /mnt
FSD does not lie within the partition!
mount_udf: mount: Invalid argument
#

So... how do I access the UDF file system on such a DVD ISO image?

For reference, here's what I get using Linux (booting Ubuntu from a
USB stick on the same computer):

me@pc:~$ sudo mount -t ufs -o ufstype=44bsd,ro /dev/sda8 /mnt
me@pc:~$ sudo mount -o loop /mnt/meunier/X17-59463.iso /mnt2
me@pc:~$ mount | egrep iso
/mnt/meunier/X17-59463.iso on /mnt2 type udf (ro)
me@pc:~$ ls /mnt2
autorun.inf  boot  bootmgr  efi  setup.exe  sources  support  upgrade
me@pc:~$

Is there any way to get the same thing on OpenBSD, or am I out of
luck?

Thanks,

Philippe



Re: DVD ISO and mount_udf: FSD does not lie within the partition!

2014-02-18 Thread Philippe Meunier
Kenneth Westerback wrote:
I'm pretty sure that DVD's don't come with a disk sector size of 512
bytes. So trying to access it with 512 byte sectors could be one
problem. You can play with the vnconfig '-t' option and add an
appropriate entry to /etc/disktab that specifies the more likely
sector size of 2048 bytes.

Alas:

# egrep mydvd /etc/disktab 
mydvd|My DVD:se#2048:ns#100:nt#1
# vnconfig -t mydvd vnd0 X17-59463.iso  
# disklabel vnd0
# /dev/rvnd0c:
type: vnd
disk: GSP1RMCULFRER_EN
label: _DVD
duid: 
flags:
bytes/sector: 2048
sectors/track: 100
tracks/cylinder: 1
sectors/cylinder: 100
cylinders: 12521
total sectors: 1252186
boundstart: 0
boundend: 1252186
drivedata: 0 

16 partitions:
#size   offset  fstype [fsize bsize  cpg]
  a:  12521860 ISO9660   
  c:  12521860 ISO9660   
# mount_cd9660 /dev/vnd0a /mnt  
# ls -la /mnt
total 4
dr-xr-xr-x   1 root  wheel  112 Apr 12  2011 .
drwxr-xr-x  14 root  wheel  512 Dec 31 18:44 ..
-r-xr-xr-x   1 root  wheel  135 Apr 12  2011 README.TXT
# umount /mnt   
# mount_udf /dev/vnd0a /mnt 
FSD does not lie within the partition!
mount_udf: mount: Invalid argument
# 

Or you can burn the .iso to a physical device.
If you burn it to a physical device, what does disklabel show?

Unfortunately the two computers I have easy access to can't write
DVDs, which is why I was playing with all that stuff in the first
place.  One computer is my OpenBSD laptop that can only read DVDs, not
write them, and the other one is an old Windows XP PC that belongs to
my employer and is limited to CDs.  I was trying to upgrade the
CD-only PC from Windows XP to Windows 7, but Windows 7 is only
available as a physical DVD or a DVD ISO, so I was trying to use my
OpenBSD laptop to create a bootable Windows 7 installation USB flash
drive from the DVD...

Anyway, Dmitrij D. Czarkoff's suggestion of using 7-Zip seems to work
with the example X17-59463.iso file I downloaded from the internet:

$ 7z l X17-59463.iso

7-Zip 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18
p7zip Version 9.20 (locale=C,Utf16=off,HugeFiles=on,1 CPU)

Listing archive: X17-59463.iso

--
Path = X17-59463.iso
Type = Udf
Comment = GSP1RMCULFRER_EN_DVD
Cluster Size = 2048
Created = 2011-04-12 12:47:03 

   Date  TimeAttr Size   Compressed  Name
--- -    
2011-04-12 12:47:03 .   43 2048  autorun.inf
2011-04-12 12:47:03 Dboot
2011-04-12 12:47:03 .   262144   262144  boot/bcd
[...]
2011-04-12 12:47:03 .7372873728  
upgrade/netfx/netfxupdate.exe
--- -    
2582383753   2583164928  877 files, 200 folders
$

I have another ISO (taken straight from a physical Windows 7 DVD using
dd(1) on my OpenBSD laptop) for which that does not seem to work
though:

$ 7z l cdn1.iso

7-Zip 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18
p7zip Version 9.20 (locale=C,Utf16=off,HugeFiles=on,1 CPU)

Listing archive: cdn1.iso

--
Path = cdn1.iso
Type = Iso
Comment =
Volume: GSP1RMCENVOL_EN_DVD
VolumeSet: GSP1RMCENVOL_EN_DVD
Publisher: MICROSOFT CORPORATION
Preparer: MICROSOFT CORPORATION, ONE MICROSOFT WAY, REDMOND WA 98052, (425) 
882-8080
Application: CDIMAGE 2.54 (01/01/2005 TM)
Created = 2011-04-12 11:09:45

   Date  TimeAttr Size   Compressed  Name
--- -    
2011-04-12 04:09:45 .  135  135  README.TXT
. 4096 4096  
[BOOT]/Bootable_NoEmulation.img
--- -    
  4231 4231  2 files, 0 folders
$

When I use mount_udf, this cdn1.iso ISO has the exact same FSD does
not lie within the partition! problem as the example X17-59463.iso
file that I got from the web, but in this case of cdn1.iso it looks
like even when using 7z I can only get the files that I could already
get when using mount_cd9660.  Which is... strange.

Anyway, for the archives, here are some other things that I tried:

- using dd(1) on my OpenBSD laptop to copy the 2.5GB cdn1.iso directly
  to a 4GB USB flash drive.  When I tested it, my laptop computer
  would not boot from that USB flash drive though, even though it
  could boot from the physical Windows 7 DVD from which cdn1.iso was
  copied in the first place using the same dd(1).  Don't ask me why
  this didn't work, I have no clue...

- booting Ubuntu on my laptop using a USB flash drive, then cp(1) (not
  dd) the content of the UDF file system of the physical Windows 7 DVD
  

Re: dhclient, resolv.conf

2011-10-22 Thread Philippe Meunier
Kenneth R Westerback wrote:
If you are using dhclient, then /etc/resolv.conf is not really a
configuration file.

Unless your machine runs its own DNS server.  Then you really don't
want dhclient-script to mess with your /etc/resolv.conf.  But
dhclient-script will still blindly mess with /etc/resolv.conf if the
DHCP server says so, despite the fact that your /etc/dhclient.conf
never asked for anything related to DNS servers in the first place.
Then you will have to mess with supersede and /etc/resolv.conf.tail
in order to fix dhclient-script's mess.

Philippe



Re: dhclient, resolv.conf

2011-10-21 Thread Philippe Meunier
Antoine Jacoutot wrote:
I use this:

send dhcp-lease-time 3600;
request subnet-mask, broadcast-address, routers;

And my resolv.conf is not modified.

That's because you happen to be using a DHCP server that has good
enough manners not to try to shove unrequested options (like name
servers) down your machine's throat.  My experience is that there are
in fact quite a few DHCP servers out there which are not so well
behaved.  Then dhclient-script will happily mess with your resolv.conf
even though your dhclient.conf never asked the DHCP server for
anything related to DNS servers.  See
http://marc.info/?l=openbsd-techm=131302612614702w=2 for my complete
opinion on the matter...

Rogier Krieger wrote:
I do not see why you prefer editing resolv.conf over dhclient.conf,
though, but I trust you have your reasons.

See the link above.  It leads to the duplication of information
between /etc/resolv.conf, /etc/resolv.conf.tail, and /etc/dhclient.conf,
and thus has the feel of curing the /etc/resolv.conf symptom instead
of curing the dhclient-script disease :-) In short, supersede and
resolv.conf.tail work but they are aesthetically unpleasing, IMHO (I'm
not speaking for the original poster, who might have a different
rational).

Philippe



Re: Laptop hard drive and emergency unload

2011-09-05 Thread Philippe Meunier
Steve wrote:
6.3.6.1 Emergency unload
 [... ]Emergency unload
is intended to be invoked in rare situations. Because this operation
is inherently uncontrolled, it is more mechanically stressful than a
normal unload.

Yes.  I have a Thinkpad T43 with a Hitachi Travelstar 5K100
(HTS541060G9AT00) and used to have the same problem: when shutting
down the computer, the power would be removed from the hard disk while
the heads were still loaded and the disk would then have to perform an
emergency unload, which resulted in the disk making a loud click.
This was the case for me from (I think) OpenBSD 3.9, when I first
installed OpenBSD, up to and including 4.8.  A few months ago I
upgraded to 4.9 (stable) and since then I can hear the disk normally
unloading the heads (a short series of 4-5 muffled clicks in very
short succession with a slightly increasing pitch) before powering
down, which is much quieter.  My disk and I both thank whoever
implemented that change :-)

On Sep 3, 2011, at 15:41, Steve wrote:
Can anyone suggest what I could do to stop this from happening?

Well, it depends...  You could try to manually sync(8) the disk, do
something like atactl wd0 apmset 1 (YMMV) to put the disk into
standby power saving mode, which would result in the heads being
unloaded after a short time, and then halt(8) the computer.  The
problem is that, as part of the normal powerdown sequence, OpenBSD
writes some logs of the shutdown on the disk (which would then reload
its heads) and also syncs the disk (I don't know if that action alone
would reload the disk heads or not if there were no actual data to
sync to the disk; using sync(8) twice in sequence results in my disk's
light blinking twice but whether the second blink actually means
anything with regard to the disk's heads is an entirely different
question...)  You could try to play with halt(8)'s -q and -n options
and see what happens, but I wouldn't recommend it...  Even if you were
lucky and it worked, it would be an annoyance to do that every time
and it'd be very easy to make a mistake and lose data.  You could
write scripts to automate the process but you'd be on your own if
something went wrong...

You could also try the following:
- put the root partition, /var/log, and everything else required for a
normal shutdown, on a USB stick and boot from that
- have all the other stuff (/home, /usr/local, etc) on your disk
- before shutting down, manually unmount all the partitions that are
on the disk (forcing the unmount if necessary), use atactl to put the
disk in a low-power mode that results in the heads being unloaded,
then shutdown the computer as usual.
Slightly better than the above, but again it'd be annoying to do and
it'd be easy to make a mistake...

With all that being said, I happily used OpenBSD on my laptop for
about five years with my hard disk doing an emergency unload on every
shutdown, and never had any problem.  It's up to you to decide whether
you can sleep at night knowing that your disk goes through a very
small number of mechanically stressful events every day.  2
emergency unloads supported by your disk at a minimum (or so Hitachi
says...) / 5 shutdowns a day (say) = about 11 years...  So it might be
an acceptable solution to you until time (and if...) an OpenBSD
developer decides to fix your problem.  You have backups anyway,
right? :-)

Philippe



Re: Donations

2010-12-07 Thread Philippe Meunier
Still off-topic but in light of the current Wikileaks brouhaha the
following press statement from the US Department of State is quite
funny (unintentionally, I assume):

http://www.state.gov/r/pa/prs/ps/2010/12/152465.htm

U.S. to Host World Press Freedom Day in 2011 [...] we are concerned
about the determination of some governments to censor and silence
individuals, and to restrict the free flow of information

Philippe



Re: November 26 1931?

2010-06-08 Thread Philippe Meunier
Miod Vallat wrote:
The following diff should fix this issue, can you give it a try? (apply
in sys/dev/ic/)

It works fine.  Before:

[...]
root on wd0a swap on wd0b dump on wd0b
WARNING: clock lost 21025 days -- CHECK AND RESET THE DATE!
[...]
Thu Nov 26 00:33:29 ICT 1931

After (no ntpd running):

[...]
root on wd0a swap on wd0b dump on wd0b
WARNING: clock lost 14769 days -- CHECK AND RESET THE DATE!
[...]
Thu Jan  1 07:01:28 ICT 1970

Enabling ntpd with the -s option then works fine too and sets the
correct date.

Thanks a lot!

Philippe



ath(4): signal power percentage gone?

2010-06-07 Thread Philippe Meunier
Hello,

I have a Thinkpad T43 with an Atheros wireless chipset (dmesg below).
Today I upgraded to the latest snapshot and I noticed that ifconfig(8)
does not show any percentage for the signal power anymore:

$ ifconfig ath0
ath0: flags=8863UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST mtu 1500
lladdr 00:14:a4:72:72:c6
priority: 4
groups: wlan egress
media: IEEE802.11 autoselect (DS11 mode 11b)
status: active
ieee80211: nwid xyz chan 11 bssid 00:a0:c5:d4:77:d0
inet6 fe80::214:a4ff:fe72:72c6%ath0 prefixlen 64 scopeid 0x2
inet 10.10.100.111 netmask 0xff00 broadcast 10.10.100.255

Scanning shows all percentages are zero:

# ifconfig ath0 scan
ath0: flags=8863UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST mtu 1500
lladdr 00:14:a4:72:72:c6
priority: 4
groups: wlan egress
media: IEEE802.11 autoselect (DS11 mode 11b)
status: active
ieee80211: nwid xyz chan 11 bssid 00:a0:c5:d4:77:d0
nwid abc chan 11 bssid 00:23:69:3a:f4:7f 0% 54M 
privacy,short_slottime 
nwid xyz chan 11 bssid 00:a0:c5:d4:77:d0 0% 11M 
nwid xyz chan 7 bssid 00:a0:c5:d4:77:d9 0% 11M 
inet 10.10.100.111 netmask 0xff00 broadcast 10.10.100.255

Anyone can confirm this behavior?

Philippe


OpenBSD 4.7-current (GENERIC) #19: Sat Jun  5 20:15:56 MDT 2010
dera...@i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC
cpu0: Intel(R) Pentium(R) M processor 1.60GHz (GenuineIntel 686-class) 1.60 
GHz
cpu0: 
FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,TM,SBF,EST,TM2
real mem  = 1063546880 (1014MB)
avail mem = 1020391424 (973MB)
mainbus0 at root
bios0 at mainbus0: AT/286+ BIOS, date 05/29/07, BIOS32 rev. 0 @ 0xfd740, SMBIOS 
rev. 2.33 @ 0xe0010 (64 entries)
bios0: vendor IBM version 70ET69WW (1.29 ) date 05/29/2007
bios0: IBM 1875E5U
acpi0 at bios0: rev 2
acpi0: tables DSDT FACP SSDT ECDT TCPA APIC MCFG BOOT
acpi0: wakeup devices LID_(S3) SLPB(S3) UART(S3) EXP0(S4) EXP1(S4) EXP2(S4) 
EXP3(S4) PCI1(S4) DOCK(S4) USB0(S3) USB1(S3) USB3(S3) USB7(S3) AC9M(S4)
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpimadt0 at acpi0 addr 0xfee0: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: apic clock running at 133MHz
ioapic0 at mainbus0: apid 1 pa 0xfec0, version 20, 24 pins
ioapic0: misconfigured as apic 0, remapped to apid 1
acpiprt0 at acpi0: bus 0 (PCI0)
acpiprt1 at acpi0: bus 2 (EXP0)
acpiprt2 at acpi0: bus -1 (EXP1)
acpiprt3 at acpi0: bus 3 (EXP2)
acpiprt4 at acpi0: bus -1 (EXP3)
acpiprt5 at acpi0: bus 4 (PCI1)
acpiec0 at acpi0
acpicpu0 at acpi0: C3, C2, C1, PSS
acpipwrres0 at acpi0: PUBS
acpitz0 at acpi0: critical temperature 99 degC
acpibtn0 at acpi0: LID_
acpibtn1 at acpi0: SLPB
acpibat0 at acpi0: BAT0 model IBM-92P1091 serial  1313 type LION oem 
Panasonic
acpibat1 at acpi0: BAT1 not present
acpiac0 at acpi0: AC unit online
acpithinkpad0 at acpi0
acpidock0 at acpi0: DOCK not docked (0)
bios0: ROM list: 0xc/0xf600! 0xcf800/0x1600 0xd1000/0x1000 0xdc000/0x4000! 
0xe/0x1
cpu0: Enhanced SpeedStep 1597 MHz: speeds: 1600, 1333, 1066, 800 MHz
pci0 at mainbus0 bus 0: configuration mode 1 (bios)
pchb0 at pci0 dev 0 function 0 Intel 82915GM Host rev 0x03
vga1 at pci0 dev 2 function 0 Intel 82915GM Video rev 0x03
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
intagp0 at vga1
agp0 at intagp0: aperture at 0xb000, size 0x1000
inteldrm0 at vga1: apic 1 int 16 (irq 11)
drm0 at inteldrm0
Intel 82915GM Video rev 0x03 at pci0 dev 2 function 1 not configured
ppb0 at pci0 dev 28 function 0 Intel 82801FB PCIE rev 0x03: apic 1 int 20 
(irq 11)
pci1 at ppb0 bus 2
bge0 at pci1 dev 0 function 0 Broadcom BCM5751M rev 0x11, BCM5750 B1 
(0x4101): apic 1 int 16 (irq 11), address 00:10:c6:e1:f8:03
brgphy0 at bge0 phy 1: BCM5750 10/100/1000baseT PHY, rev. 0
ppb1 at pci0 dev 28 function 2 Intel 82801FB PCIE rev 0x03: apic 1 int 22 
(irq 11)
pci2 at ppb1 bus 3
uhci0 at pci0 dev 29 function 0 Intel 82801FB USB rev 0x03: apic 1 int 16 
(irq 11)
uhci1 at pci0 dev 29 function 1 Intel 82801FB USB rev 0x03: apic 1 int 17 
(irq 11)
uhci2 at pci0 dev 29 function 2 Intel 82801FB USB rev 0x03: apic 1 int 18 
(irq 11)
uhci3 at pci0 dev 29 function 3 Intel 82801FB USB rev 0x03: apic 1 int 19 
(irq 11)
ehci0 at pci0 dev 29 function 7 Intel 82801FB USB rev 0x03: apic 1 int 19 
(irq 11)
usb0 at ehci0: USB revision 2.0
uhub0 at usb0 Intel EHCI root hub rev 2.00/1.00 addr 1
ppb2 at pci0 dev 30 function 0 Intel 82801BAM Hub-to-PCI rev 0xd3
pci3 at ppb2 bus 4
cbb0 at pci3 dev 0 function 0 TI PCI1510 CardBus rev 0x00: apic 1 int 16 (irq 
11)
ath0 at pci3 dev 2 function 0 Atheros AR5212 (IBM MiniPCI) rev 0x01: apic 1 
int 21 (irq 11)
ath0: AR5213A 5.9 phy 4.3 rf5112a 3.6, WOR01W, address 00:14:a4:72:72:c6
cardslot0 

November 26 1931?

2010-05-26 Thread Philippe Meunier
Hello,

I have an old Sun Ultra 10 with a dead motherboard battery.  After
cold-starting the machine the hardware clock now always indicates the
date as being January 1 1968.  Strange things then happen when I boot
OpenBSD (10.10.6.10 and 10.10.6.11 are my local time servers):


[...]
Power On Self Test Failed.  Cause: NVRAM U13
ok date
01/01/1968 00:00:24  GMT
ok boot disk
[...]
OpenBSD 4.7-current (GENERIC) #328: Mon May 24 08:54:38 MDT 2010
dera...@sparc64.openbsd.org:/usr/src/sys/arch/sparc64/compile/GENERIC
[...]
root on wd0a swap on wd0b dump on wd0b
WARNING: clock lost 21038 days -- CHECK AND RESET THE DATE!
Automatic boot in progress: starting file system checks.
/dev/rwd0a: file system is clean; not checking
[...]
starting named
Nov 26 00:33:09 plara named[24368]: 
/usr/src/usr.sbin/bind/lib/isc/entropy.c:382: fatal error:
Nov 26 00:33:09 plara named[24368]: RUNTIME_CHECK(isc_time_now((t)) == 0) 
failed
Nov 26 00:33:09 plara named[24368]: exiting (due to fatal error in library)
starting initial daemons: ntpd.
Nov 26 00:33:10 plara ntpd[15149]: recvmsg control format 10.10.6.10: No such 
file or directory
Nov 26 00:33:10 plara ntpd[15149]: recvmsg control format 10.10.6.11: No such 
file or directory
[...]
standard daemons: apmd cron.
Thu Nov 26 00:33:31 ICT 1931
[...]


The warning to check the date is clear enough, though I was still a
bit surprised to see both named and ntpd fail.  I don't know why named
cares so much about the date but I'll assume there's a good reason.  I
also don't know why or how OpenBSD transforms 01/01/1968 into November
26 1931, but then again, once the battery is dead I guess the hardware
can be considered broken and all bets are off.

Note that the initial warning indicates that the clock lost 21038
days, which is about 57.6 years.  2010.4 (~ today) + 57.6 = 2068 =
1968 + 100, so it looks like the computation is done modulo 100.  I
would have expected to see a value like (2010.4 - 1931.8)*365 = 28689
days lost.

Anyway, what I'm mostly surprised about is the behavior of ntpd, since
I expected it to correct the machine's date instead of failing:

# egrep ntpd /etc/rc.conf.local
ntpd_flags=-s

The error message from ntpd is also strange.  Note that ntpd does not
die, it just seems to hang around doing nothing.

I have to manually move the date to at least 01/01/1970 for 'ntpd -s'
to work:


# date
Thu Nov 26 00:40:10 ICT 1931
# ntpd -d -s
ntp engine ready
recvmsg control format 10.10.6.10: No such file or directory
recvmsg control format 10.10.6.11: No such file or directory
no reply received in time, skipping initial time setting
^Cntp engine exiting
Terminating
# date -u 19700101.00
Thu Jan  1 00:00:00 UTC 1970
# ntpd -d -s
ntp engine ready
reply from 10.10.6.10: offset 1274851922.958401 delay 0.001080, next query 6s
set local clock to Wed May 26 12:32:07 ICT 2010 (offset 1274851922.958401s)
reply from 10.10.6.11: offset 1274851922.956023 delay 0.001321, next query 7s
reply from 10.10.6.10: offset 0.74 delay 0.000816, next query 9s
reply from 10.10.6.11: offset -0.002262 delay 0.001241, next query 8s
reply from 10.10.6.10: offset 0.24 delay 0.000715, next query 9s
reply from 10.10.6.11: offset -0.002189 delay 0.001413, next query 8s
peer 10.10.6.11 now valid
reply from 10.10.6.11: offset -0.002417 delay 0.000954, next query 9s
peer 10.10.6.10 now valid
reply from 10.10.6.10: offset -0.09 delay 0.000691, next query 5s


I found code in /usr/src/usr.sbin/ntpd/client.c which I think explains
why I have to manually move the date to at least 01/01/1970:

if (T4  JAN_1970) {
client_log_error(p, recvmsg control format, EBADF);
set_next(p, error_interval());
return (0);
}

though I guess this test ends up covering more cases than it was
supposed to, given the error message...

I tried rdate too, without success:


# date 
Thu Nov 26 00:40:13 ICT 1931
# rdate -nv 10.10.6.11 
Thu Nov 26 00:40:15 ICT 1931
rdate: adjust local clock by 9223362813482738688.00 seconds
# date
Thu Nov 26 00:40:16 ICT 1931


60s/mn * 60mn/hour * 24hour/day * 365day/year = 31536000s/year
Then 9223362813482738688s/(31536000s/year) = 292470916206 years...

Well, I'll just have to put something like 'date -u 19700101.00'
directly into /etc/rc to help ntpd a bit.  Note that I'm not
complaining, the root problem is obviously the dead battery.  I was
just a bit surprised that I couldn't use ntpd or rdate to easily fix
it...

On a related note, date(1) man's page seems to be wrong.  The
'1969-2068' range for years looks more like '1970-2038':


Xorg -br option does not work anymore

2009-12-19 Thread Philippe Meunier
Hello,

Xorg's -br option does not seem to work anymore.  When I try it I get
the standard X grey pattern on the root window instead of getting
solid black.  The option '-nolisten tcp' still works, and I have not
tried to test other options.  I noticed the change after upgrading a
desktop PC from 4.5-current to 4.6-current about a month and a half
ago (recompiling OpenBSD and Xenocara from source) and saw the same
change again yesterday when doing the same upgrade using the same
homemade release on a Thinkpad laptop (T43).  Can anyone confirm this
or is it just me?  I know about 'xsetroot -solid black', I just would
like to know whether this is an Xorg bug or a problem with the way my
machines are configured and / or upgraded.

$ Xorg -version
[...]
X.Org X Server 1.6.3.901 (1.6.4 RC 1)
Release Date: 2009-8-25
X Protocol Version 11, Revision 0
Build Operating System: OpenBSD 4.6 i386 
Current Operating System: OpenBSD akpatok.ungava.bay 4.6 GENERIC#4 i386
Build Date: 28 October 2009  04:45:26PM
[...]
$ dmesg | head -1
OpenBSD 4.6-current (GENERIC) #4: Wed Oct 28 15:35:02 ICT 2009

Thanks,

Philippe



Re: fonts in NetBeans

2009-07-21 Thread Philippe Meunier
James Hartley wrote:
This has been reported before:
http://marc.info/?l=openbsd-miscw=2r=1s=square+netbeansq=b

See also http://www.netbeans.org/issues/show_bug.cgi?id=145696

If there is someone who regularly compiles netbeans on openbsd, has a
fast machine and a fast internet connection, and enough time on his
hands (on other words, not me...) then it might be a good idea to
coordinate with the netbeans people, give them an account on your
machine if that helps, and see if the problem can be resolved.
Otherwise I think it's just not going to happen...

Philippe



Re: Sun Ultra 5/10 installation problems

2009-06-16 Thread Philippe Meunier
Okay, problem solved.  Someone (you know who you are) sent me the
following by email:

I had much fun installing OpenBSD on an Ultra 10, too.

What I had to do, after dd'ing the miniroot image on the hard disk was
to unplugg the floppy (for whatever reason... but it booted after I
did that).

Also: if you have two graphic cards in it, remove one of them.  That
helped (but I don't know for which particular error).

So I physically disconnected everything I could in my machine (floppy
drive, CD drive, and PCI card) and then, lo and behold, the machine
booted without problem from the miniroot image on the hard disk.  I
then went to the miniroot's shell prompt (i.e. without installing
anything), halted and powered down the machine, reconnected
everything, and, much to my surprise, I was still able to boot from
the miniroot! (bangs head on keyboard)

I rebooted into Solaris and checked that the CD drive was still working
by mouting and reading a CD (I know for a fact that the CD drive was
working before I disconnected anything), then checked that the floppy
drive was working too by mouting and reading a FAT-formatted floppy
(unfortunately I didn't think of testing the floppy drive before
disconnecting anything, so I don't know for sure whether it was actually
working or not before, but I know that Solaris at least detected it at
boot (see Solaris's dmesg in one of my previous emails)).  Anyway, so I
rebooted into the miniroot and then installed OpenBSD without problem.
Here's the dmesg:

console is /p...@1f,0/p...@1,1/e...@1/s...@14,40:a
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California.  All rights reserved.
Copyright (c) 1995-2009 OpenBSD. All rights reserved.  http://www.OpenBSD.org

OpenBSD 4.5-current (GENERIC) #0: Sun Jun 14 02:35:19 MDT 2009
dera...@sparc64.openbsd.org:/usr/src/sys/arch/sparc64/compile/GENERIC
real mem = 268435456 (256MB)
avail mem = 248152064 (236MB)
mainbus0 at root: Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 300MHz)
cpu0 at mainbus0: SUNW,UltraSPARC-IIi (rev 1.3) @ 300 MHz
cpu0: physical 16K instruction (32 b/l), 16K data (32 b/l), 512K external (64 
b/l)
psycho0 at mainbus0 addr 0xfffc4000: SUNW,sabre, impl 0, version 0, ign 7c0
psycho0: bus range 0-2, PCI bus 0
psycho0: dvma map c000-dfff
pci0 at psycho0
ppb0 at pci0 dev 1 function 1 Sun Simba PCI-PCI rev 0x11
pci1 at ppb0 bus 1
ebus0 at pci1 dev 1 function 0 Sun PCIO EBus2 rev 0x01
auxio0 at ebus0 addr 726000-726003, 728000-728003, 72a000-72a003, 
72c000-72c003, 72f000-72f003
power0 at ebus0 addr 724000-724003 ivec 0x25
SUNW,pll at ebus0 addr 504000-504002 not configured
sab0 at ebus0 addr 40-40007f ivec 0x2b: rev 3.2
sabtty0 at sab0 port 0: console
sabtty1 at sab0 port 1
comkbd0 at ebus0 addr 3083f8-3083ff ivec 0x29: no keyboard
comms0 at ebus0 addr 3062f8-3062ff ivec 0x2a
wsmouse0 at comms0 mux 0
lpt0 at ebus0 addr 3043bc-3043cb, 30015c-30015d, 70-7f ivec 0x22: polled
fdthree at ebus0 addr 3023f0-3023f7, 706000-70600f, 72-720003 ivec 0x27 
not configured
clock1 at ebus0 addr 0-1fff: mk48t59
flashprom at ebus0 addr 0-f not configured
audioce0 at ebus0 addr 20-2000ff, 702000-70200f, 704000-70400f, 
722000-722003 ivec 0x23 ivec 0x24: nvaddrs 0
audio0 at audioce0
hme0 at pci1 dev 1 function 1 Sun HME rev 0x01: ivec 0x7e1, address 
08:00:20:9e:d7:72
nsphy0 at hme0 phy 1: DP83840 10/100 PHY, rev. 1
machfb0 at pci1 dev 2 function 0 ATI Mach64 rev 0x9a
machfb0: ATY,GT-B, 1152x900
wsdisplay0 at machfb0 mux 1
wsdisplay0: screen 0 added (std, sun emulation)
pciide0 at pci1 dev 3 function 0 CMD Technology PCI0646 rev 0x03: DMA, 
channel 0 configured to native-PCI, channel 1 configured to native-PCI
pciide0: using ivec 0x7e0 for native-PCI interrupt
wd0 at pciide0 channel 0 drive 0: ST34342A
wd0: 16-sector PIO, LBA, 4103MB, 8404830 sectors
wd0(pciide0:0:0): using PIO mode 4, DMA mode 2
atapiscsi0 at pciide0 channel 1 drive 0
scsibus0 at atapiscsi0: 2 targets
cd0 at scsibus0 targ 0 lun 0: GoldStar, CD-ROM CRD-8240B, 1.24 ATAPI 5/cdrom 
removable
cd0(pciide0:1:0): using PIO mode 4, DMA mode 2
ppb1 at pci0 dev 1 function 0 Sun Simba PCI-PCI rev 0x11
pci2 at ppb1 bus 2
siop0 at pci2 dev 1 function 0 Symbios Logic 53c875 rev 0x14: ivec 0x7d0, 
using 4K of on-board RAM
scsibus1 at siop0: 16 targets, initiator 7
siop1 at pci2 dev 1 function 1 Symbios Logic 53c875 rev 0x14: ivec 0x7d1, 
using 4K of on-board RAM
scsibus2 at siop1: 16 targets, initiator 7
softraid0 at root
bootpath: /p...@1f,0/p...@1,1/i...@3,0/d...@0,0
root on wd0a swap on wd0b dump on wd0b

Interestingly fdthree is listed as not configured and there's nothing
like fd0 visible anywhere.  Well, it boots, which is all I care about :-)

Nick Holland wrote:
Philippe Meunier wrote:
 Next I tried to install OpenBSD from Solaris, using one of the
 existing partitions:
...

 I used Solaris's newfs to re-create the file system on
 /dev/rdsk/c0t0d0s4 (bye bye /home), mounted it on /mnt, downloaded
 bootblk

Re: Sun Ultra 5/10 installation problems

2009-06-12 Thread Philippe Meunier
Huy Nguyen wrote:
why don't you install from the network?

Yes, that's the last boot method I have to try before giving up
completely...  I'll give it a try next week once I have a bit more
spare time.

Bryan Irvine wrote:
Grab OpenBSD/4.5/sparc64/cd45.iso and see if you fair better.

No luck, I get:

Can't read disk label.
Can't open disk label package
Evaluating: boot cdrom
Can't open boot device

just like when I tried using the latest install45.iso.

Someone wrote to me directly:
I don't see the HW entry for a CD in the above dmsg are you sure the
internal cables are connected?

I don't know why the CD doesn't appear explicitely in the dmesg, I can
only assume that that's the way Solaris works (I'm no Solaris expert,
so maybe someone else will be nice enough to comment on that), but the
CD drive is definitely connected (see below).

Can you boot from a Solaris CD?

Yes, I can boot from a Solaris 2.6 installation CD I have around, and
I can also mount the same CD (using the same mount command as in my
previous email) after booting Solaris from the disk.

try typing probe-ide at the PROM OK prompt and make sure the cdrom drive
is attached where the PROM is looking for it.

probe-ide gives:

  Device 0  ( Primary Master )
  ATA Model: ST34342A

  Device 1  ( Primary Slave )
 Not Present

  Device 2  ( Secondary Master )
 Removable ATAPI Model: CRD-8240B

  Device 3  ( Secondary Slave )
 Not Present

and while I was at it, obdiag (after a reset-all) gives:

stdin: fffe1e08 
stdout: fffe1e10 
loading code into: /p...@1f,0/p...@1,1/e...@1
loading code into: /p...@1f,0/p...@1,1/e...@1/eep...@14,0
loading code into: /p...@1f,0/p...@1,1/e...@1/e...@14,3043bc
loading code into: /p...@1f,0/p...@1,1/e...@1/s...@14,3062f8
loading code into: /p...@1f,0/p...@1,1/e...@1/s...@14,40
loading code into: /p...@1f,0/p...@1,1/netw...@1,1
loading code into: /p...@1f,0/p...@1,1/e...@1/fdth...@14,3023f0
loading code into: /p...@1f,0/p...@1,1/e...@1/SUNW,cs4...@14,20
loading code into: /p...@1f,0/p...@1,1/i...@3
loading code into: /p...@1f,0/p...@1,1/i...@3/disk
loading code into: /p...@1f,0/p...@1,1/i...@3/cdrom
loading code into: /p...@1f,0/p...@1,1/SUNW,m...@2
Debugging enabled

Having the cdrom drive go bad is very common on these system and its near
10 years old. Just try a different drive or make a little network
(crossover from a laptop will do) and net install it.

Yes, I'll try the net boot next.

Thanks a lot,

Philippe



Re: Sun Ultra 5/10 installation problems

2009-06-12 Thread Philippe Meunier
Philippe Meunier wrote:
Someone wrote to me directly:
I don't see the HW entry for a CD in the above dmsg are you sure the
internal cables are connected?

I don't know why the CD doesn't appear explicitely in the dmesg, I can
only assume that that's the way Solaris works (I'm no Solaris expert,
so maybe someone else will be nice enough to comment on that), but the
CD drive is definitely connected (see below).

Replying to myself...  Solaris does indeed show the CD drive (sd32, at
the bottom of the listing) when booting with the -v option:

ok boot -v
Boot device: /p...@1f,0/p...@1,1/i...@3/d...@0,0  File and args: -v
Size: 314284+93248+121472 Bytes
cpu0: SUNW,UltraSPARC-IIi (upaid 0 impl 0x12 ver 0x13 clock 300 MHz)
SunOS Release 5.7 Version Generic 64-bit [UNIX(R) System V Release 4.0]
Copyright (c) 1983-1998, Sun Microsystems, Inc.
mem = 262144K (0x1000)
avail mem = 252256256
Ethernet address = 8:0:20:9e:d7:72
root nexus = Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 300MHz)
pci0 at root: UPA 0x1f 0x0
pci0 is /p...@1f,0
PCI-device: p...@1,1, simba0
PCI-device: p...@1, simba1
PCI-device: i...@3, uata0
dad0 at pci1095,6460 target 0 lun 0
dad0 is /p...@1f,0/p...@1,1/i...@3/d...@0,0
Seagate Medalist 34342A cyl 8892 alt 2 hd 15 sec 63
root on /p...@1f,0/p...@1,1/i...@3/d...@0,0:a fstype ufs
PCI-device: e...@1, ebus0
su0 at ebus0: offset 14,3083f8
su0 is /p...@1f,0/p...@1,1/e...@1/s...@14,3083f8
su1 at ebus0: offset 14,3062f8
su1 is /p...@1f,0/p...@1,1/e...@1/s...@14,3062f8
keyboard is /p...@1f,0/p...@1,1/e...@1/s...@14,3083f8 major 37 minor 0
mouse is /p...@1f,0/p...@1,1/e...@1/s...@14,3062f8 major 37 minor 1
se0 at ebus0: offset 14,40
se0 is /p...@1f,0/p...@1,1/e...@1/s...@14,40
stdin is /p...@1f,0/p...@1,1/e...@1/s...@14,40:a major 20 minor 0
stdout is /p...@1f,0/p...@1,1/e...@1/s...@14,40:a major 20 minor 0
SUNW,hme0: CheerIO 2.0 (Rev Id = c1) Found
PCI-device: netw...@1,1, hme0
hme0 is /p...@1f,0/p...@1,1/netw...@1,1
pseudo-device: pm0
pm0 is /pseudo/p...@0
PCI-device: SUNW,m...@2, m640
m640 is /p...@1f,0/p...@1,1/SUNW,m...@2
m64#0: 1152x900, 2M mappable, rev 4754.9a
pseudo-device: tod0
tod0 is /pseudo/t...@0
power0 at ebus0: offset 14,724000
power0 is /p...@1f,0/p...@1,1/e...@1/po...@14,724000
pseudo-device: vol0
vol0 is /pseudo/v...@0
/p...@1f,0/p...@1/s...@1 (glm0):
Rev. 5 Symbios 53c875 found.
PCI-device: s...@1, glm0
glm0 is /p...@1f,0/p...@1/s...@1
/p...@1f,0/p...@1/s...@1,1 (glm1):
Rev. 5 Symbios 53c875 found.
PCI-device: s...@1,1, glm1
glm1 is /p...@1f,0/p...@1/s...@1,1
sd32 at uata0: target 2 lun 0
sd32 is /p...@1f,0/p...@1,1/i...@3/s...@2,0
fd0 at ebus0: offset 14,3023f0
fd0 is /p...@1f,0/p...@1,1/e...@1/fdth...@14,3023f0

Philippe



Re: Anyone working with netbeans 5.5?

2009-06-12 Thread Philippe Meunier
MANI wrote:
I'm running -current i386 with netbeans 5.5 and jdk 1.7 from packages,
everything works fine except Netbeans output window, it shows some
characters in square when I compile sources in output window, for example:
[...]
I found these two unsolved threads in mailing lists with the same problem:

Yes, apparently several people have the same problem.  I do too.  My
guess is that it's not a font problem but probably something like a
race condition somewhere, because in my case I've seen from time to
time part of the output being printed correctly.

For your information, about two weeks ago I compiled netbeans 6.5.1
(directly from the source code, not from ports) and jdk 1.5 (from
ports) on -current and the same problem was there too.

Philippe



Sun Ultra 5/10 installation problems

2009-06-11 Thread Philippe Meunier
Hello,

I recently rescued an unused Sun Ultra 5/10 that was going to end up
in the trash and I've been trying for several hours now to install
OpenBSD on it with no success whatsoever.  It's a headless machine
with one internal disk, a CD drive, a floppy drive, and what looks
like a PCI card with two external VHDCI connectors.  It's running
Solaris 2.7, and I'm connected to it through its serial port from a PC
running -current.

Here's Solaris's dmesg:


cpu0: SUNW,UltraSPARC-IIi (upaid 0 impl 0x12 ver 0x13 clock 300 MHz)
SunOS Release 5.7 Version Generic 64-bit [UNIX(R) System V Release 4.0]
Copyright (c) 1983-1998, Sun Microsystems, Inc.
mem = 262144K (0x1000)
avail mem = 252346368
Ethernet address = 8:0:20:9e:d7:72
root nexus = Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 300MHz)
pci0 at root: UPA 0x1f 0x0
pci0 is /p...@1f,0
PCI-device: p...@1,1, simba0
PCI-device: p...@1, simba1
PCI-device: i...@3, uata0
dad0 at pci1095,6460 target 0 lun 0
dad0 is /p...@1f,0/p...@1,1/i...@3/d...@0,0
Seagate Medalist 34342A cyl 8892 alt 2 hd 15 sec 63
root on /p...@1f,0/p...@1,1/i...@3/d...@0,0:a fstype ufs
PCI-device: e...@1, ebus0
su0 at ebus0: offset 14,3083f8
su0 is /p...@1f,0/p...@1,1/e...@1/s...@14,3083f8
su1 at ebus0: offset 14,3062f8
su1 is /p...@1f,0/p...@1,1/e...@1/s...@14,3062f8
keyboard is /p...@1f,0/p...@1,1/e...@1/s...@14,3083f8 major 37 minor 0
mouse is /p...@1f,0/p...@1,1/e...@1/s...@14,3062f8 major 37 minor 1
se0 at ebus0: offset 14,40
se0 is /p...@1f,0/p...@1,1/e...@1/s...@14,40
stdin is /p...@1f,0/p...@1,1/e...@1/s...@14,40:a major 20 minor 0
stdout is /p...@1f,0/p...@1,1/e...@1/s...@14,40:a major 20 minor 0
SUNW,hme0: CheerIO 2.0 (Rev Id = c1) Found
PCI-device: netw...@1,1, hme0
hme0 is /p...@1f,0/p...@1,1/netw...@1,1


First I upgraded the PROM of the Ultra to the latest version and that
was a walk in the park:


[before]
# prtconf -V
OBP 3.11.12 1998/05/19 11:30

[after]
# prtconf -V
OBP 3.31.0 2001/07/25 20:36


I also used 'set-defaults' to restore the default NVRAM settings.

Then I downloaded OpenBSD/snapshots/sparc64/install45.iso from a mirror,
burned it to a CD-RW (using an OpenBSD laptop) by following the
instructions from faq13.html#burnCD, then tried to boot the Ultra
from the CD:


ok boot cdrom
Resetting ... 


Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 300MHz), No Keyboard
OpenBoot 3.31, 256 MB (60 ns) memory installed, Serial #10409842.
Ethernet address 8:0:20:9e:d7:72, Host ID: 809ed772.



Rebooting with command: boot cdrom
Boot device: /p...@1f,0/p...@1,1/i...@3/cd...@2,0:f  File and args: 
Can't read disk label.
Can't open disk label package
Evaluating: boot cdrom

Can't open boot device


Trying to mount the CD using Solaris (after killing vold) failed as
well:


# mount -F hsfs -o ro /dev/dsk/c0t2d0s0 /mnt
mount: /dev/dsk/c0t2d0s0 no such device


Now I happen to have an old Solaris 2.6 installation CD around and I
can both mount it (using the exact same command as above) or boot from
it without problem.

So my guess is that the machine has a cheap and/or old CD drive that
has problems reading CD-RWs...

Next I tried to install OpenBSD from Solaris, using one of the
existing partitions:


# df -k
Filesystemkbytesused   avail capacity  Mounted on
/proc  0   0   0 0%/proc
/dev/dsk/c0t0d0s02052609  268088 172294314%/
/dev/dsk/c0t0d0s11015332  668574  28583971%/usr
fd 0   0   0 0%/dev/fd
/dev/dsk/c0t0d0s4 865694  237321  56777530%/home
/dev/dsk/c0t0d0s3 122986 967  109721 1%/tmp


I used Solaris's newfs to re-create the file system on
/dev/rdsk/c0t0d0s4 (bye bye /home), mounted it on /mnt, downloaded
bootblk, ofwboot, bsd, bsd.rd, base45.tgz, and etc45.tgz to /root
(through the serial port, after tar-ing and uuencode-ing the whole
thing; the Ultra is not connected to the network), copied bootblk and
ofwboot to /mnt, used Solaris's installboot to install bootblk on
/dev/rdsk/c0t0d0s4, copied bsd and bsd.rd to /mnt, unpacked base45.tgz
and etc45.tgz there, and then rebooted:


ok boot disk:e bsd
[...]
Boot device: /p...@1f,0/p...@1,1/i...@3/d...@0,0:e  File and args: bsd
OpenBSD IEEE 1275 Bootblock 1.1
.. OpenBSD BOOT 1.3
Memory Address not 

touch -h ?

2008-06-19 Thread Philippe Meunier
Hello,

After accidentally deleting and recreating a symlink (call it, say,
'slink') to some file ('afile'), I tried to use touch(1) to set the
modification time of slink to be the same as the modification time of
the original symlink I had accidentally deleted (mostly to help me
remember when I created the symlink relative to the other files in
that directory, to help me remember why I created the symlink in the
first place).  Of course touch(1) changed the modification time of
afile, not the modification time of slink.

After reading the manpage for symlink(7) I would have expected
touch(1) to have an '-h' option, but it does not.  Is there any
special reason why it does not, is this an oversight, or was it just
decided that such feature is so seldom needed that it wasn't worth
implementing?  Just curious...



While I was at it, I also looked at the manpage for lstat(2): Unlike
other file system objects, symbolic links do not have an owner, group,
access mode, times, etc.  Instead, these attributes are taken from the
directory that contains the link.  That's wrong, otherwise there
would be no need for, say, chown(8) to have a '-h' option.  Symlinks
also have their own modification time which is obviously not taken
from the directory containing the symlink:

$ mkdir adir; cd adir; touch afile; ls -la
total 8
drwx--   2 meunier  users   512 Jun 20 11:03 ./
drwxr-xr-x  27 meunier  users  1536 Jun 20 11:03 ../
-rw---   1 meunier  users 0 Jun 20 11:03 afile
$ sleep 60; ln -s afile slink; ls -la
total 8
drwx--   2 meunier  users   512 Jun 20 11:04 ./
drwxr-xr-x  27 meunier  users  1536 Jun 20 11:03 ../
-rw---   1 meunier  users 0 Jun 20 11:03 afile
lrwx--   1 meunier  users 5 Jun 20 11:04 slink@ - afile
$ sleep 60; touch .; ls -la
total 8
drwx--   2 meunier  users   512 Jun 20 11:05 ./
drwxr-xr-x  27 meunier  users  1536 Jun 20 11:03 ../
-rw---   1 meunier  users 0 Jun 20 11:03 afile
lrwx--   1 meunier  users 5 Jun 20 11:04 slink@ - afile
$ 

And they have their own access mode which is not taken from the
directory containing the symlink either:

$ chmod g+w .; ls -la
total 8
drwx-w   2 meunier  users   512 Jun 20 11:05 ./
drwxr-xr-x  27 meunier  users  1536 Jun 20 11:03 ../
-rw---   1 meunier  users 0 Jun 20 11:03 afile
lrwx--   1 meunier  users 5 Jun 20 11:04 slink@ - afile
$

In fact it looks more like a symlink's permissions are simply rwxrwxrwx
with the umask applied to it:

$ umask 753; ln -s afile slink2; ls -la
total 8
drwx-w   2 meunier  users   512 Jun 20 11:07 ./
drwxr-xr-x  27 meunier  users  1536 Jun 20 11:03 ../
-rw---   1 meunier  users 0 Jun 20 11:03 afile
lrwx--   1 meunier  users 5 Jun 20 11:04 slink@ - afile
lw-r--   1 meunier  users 5 Jun 20 11:07 slink2@ - afile
$ 

Both the man page for chmod(1) and the source code for it indicate
that symlinks do not have modes though, and chmod(1) does not have a
'-h' option, so between that and what the manpage for lstat(2) says, I
think it's not very clear for the reader where the modes for slink and
slink2 above are really supposed to come from.  In fact, if I remember
my OS textbooks correctly, I'm quite sure symlinks are just plain
files with just a special bit in the mode indicating their symlink
status, and with the name of the file they point to as their content
(hence the 5 bytes of slink and slink2 above).

I guess that, since symlink modes are never used to check permissions,
chmod(1) simply doesn't provide any option to change them once the
symlink has been created.  Same thing for the modification time and
touch(1), I assume (though I'd argue that in this case having a '-h'
option might be useful in some cases --- see above).  But that's quite
different from pretending the modes and times simply don't exist.

There's probably a lot of history involved here, but IMHO it would be
nice if the man pages for lstat(2) and chmod(1) could be fixed /
clarified to tell the story straight rather than tell confusing
partial truths that do not really match reality.  Just saying... :-)

Philippe



Thinkpad hibernation

2006-07-10 Thread Philippe Meunier
Hi,

I have a Thinkpad laptop (T43) and I'm about to install OpenBSD on it.
I have a few questions regarding hibernation though.  I've read
various documents online so I'm fairly confident with regard to the
how but out of curiosity I have some questions below regarding the
why, plus a few comments.

- http://www.openbsd.org/i386-laptop.html indicates that there's no
ACPI support in OpenBSD, but at the same time I've found a man page
for acpid(8) on the OpenBSD website.  So what is the current
situation?

- http://www.openbsd.org/i386-laptop.html doesn't say anything about
the size of the hibernation partition.  I looked around for that
information and found on http://jcs.org/laptops/#x40 that the size of
the hibernation partition should be the size of memory + video memory
+ a few MB, though that web page doesn't give any hint as to were that
information came from or if it was simply guessed by trial-and-error.
After searching around some more I finally found
http://samba.org/ftp/unpacked/junkcode/tphdisk.c which seems to be the
source of the information and indicates that the size of the partition
should be main memory + video memory + 2 MB.  I think it would be nice
if that information could be placed somewhere on
http://www.openbsd.org/i386-laptop.html because, unless one searches
hard for that information in advance, by the time one might see
tphdisk's usage message the hibernation partition will presumably
already have been created (and therefore will potentially have been
created with the wrong size...)

- I'm not sure I understand why the video memory has to be saved when
hibernating.  Once the computer has been restarted I would expect
programs to simply redraw themselves, no?  Is it because in OpenBSD
hibernation is done via the BIOS and the BIOS simply does it that way
no matter what?

- Which brings me to my last point: has anybody worked / is working /
plans on working on handling hibernation and suspend-to-RAM entirely
in software rather than through the BIOS?  The way swsusp or suspend2
do it for linux?  I'd guess that a good chunk of the machinery
necessary for something like that is already in the kernel, save maybe
for things like copying to disk the non-pageable kernel memory and
bringing it back into memory after restart.  So are there any plans to
go into that direction, by any chance?

Thanks,

Philippe