Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 4 Apr 2005 21:20:26 -0500
From:      Craig Boston <craig@xfoil.gank.org>
To:        "M. Warner Losh" <imp@bsdimp.com>
Cc:        current@FreeBSD.ORG
Subject:   Re: Can't change partition table anymore
Message-ID:  <20050405022025.GA82438@nowhere>
In-Reply-To: <20050403.232036.35219348.imp@bsdimp.com>
References:  <20050404044028.GC49953@nagual.pp.ru> <20050403.225310.82842428.imp@bsdimp.com> <20050404051047.GA50719@nagual.pp.ru> <20050403.232036.35219348.imp@bsdimp.com>

next in thread | previous in thread | raw e-mail | index | archive | help
> In message: <20050404051047.GA50719@nagual.pp.ru>
>             Andrey Chernov <ache@nagual.pp.ru> writes:
> : Various partition checkers under Windows indicates no problems.
> : No offset+size overlap.
On Sun, Apr 03, 2005 at 11:20:36PM -0600, M. Warner Losh wrote:
> So clearly there's something wrong on your machine, or there's a bug
> in the GEOM code.  It should work, and if not, we need to find out
> either your pilot error, or the bug that is prefenting it from
> updating.  My -current machine appears to work as expected...

FWIW, I'm seeing this too on a Soekris running 5.4-PRE built a couple
days ago.  At first I thought it might be related to the bug described
in 1.62 of geom_mbr.c since my / is mounted read-only, but remounting it
read-write does not seem to improve matters:

# boot0cfg -v ad0
#   flag     start chs   type       end chs       offset         size
1   0x00      0:  1: 1   0xa5    457:  7:32           32       117216
2   0x80    458:  1: 1   0xa5    915:  7:32       117280       117216
3   0x00    916:  0: 1   0xa5    979:  7:32       234496        16384

version=1.0  drive=0x80  mask=0xf  ticks=1
options=packet,noupdate,nosetdrv
default_selection=F1 (Slice 1)
# boot0cfg -v -s 2 ad0
boot0cfg: /dev/ad0: ioctl DIOCSMBR: Operation not permitted

Previously I was just using the standard MBR (no boot0) and using fdisk
combined with geom.debugflags=16 to change the active partition.  I
thought I'd give boot0 a try after reading that it's supposed to work...

Glancing through the code I don't see anything that returns EPERM except
the flags check, so it's probably coming from the g_write_data call.

The commit logs don't show anything between 5.4 and -current that looks
like an obvious fix, but I may be missing something.  I may try -current
on this machine at some point to get the improved Atheros support.  For
the moment phk's sweeping device changes have scared me off :-)

Craig



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050405022025.GA82438>