Re: [PATCH] ufs: make solaris fsck happy
[Posted March 3, 2010 by corbet]
| From: |
| Andrew Morton <akpm-AT-linux-foundation.org> |
| To: |
| Evgeniy Dushistov <dushistov-AT-mail.ru> |
| Subject: |
| Re: [PATCH] ufs: make solaris fsck happy |
| Date: |
| Mon, 1 Mar 2010 16:37:54 -0800 |
| Cc: |
| linux-kernel-AT-vger.kernel.org, Alex Viskovatoff <viskovatoff-AT-imap.cc> |
| Archive-link: |
| Article, Thread
|
On Thu, 25 Feb 2010 21:47:43 +0300
Evgeniy Dushistov <dushistov@mail.ru> wrote:
> --- a/fs/ufs/ufs_fs.h
> +++ b/fs/ufs/ufs_fs.h
> @@ -227,11 +227,16 @@ typedef __u16 __bitwise __fs16;
> */
> #define ufs_cbtocylno(bno) \
> ((bno) * uspi->s_nspf / uspi->s_spc)
> -#define ufs_cbtorpos(bno) \
> +#define ufs_cbtorpos(bno) \
> + ((UFS_SB(sb)->s_flags & UFS_CG_SUN) ? \
> + (((((bno) * uspi->s_nspf % uspi->s_spc) % \
> + uspi->s_nsect) * \
> + uspi->s_nrpos) / uspi->s_nsect) \
> + : \
> ((((bno) * uspi->s_nspf % uspi->s_spc / uspi->s_nsect \
> * uspi->s_trackskew + (bno) * uspi->s_nspf % uspi->s_spc \
> % uspi->s_nsect * uspi->s_interleave) % uspi->s_nsect \
> - * uspi->s_nrpos) / uspi->s_npsect)
> + * uspi->s_nrpos) / uspi->s_npsect))
yikes, that macro should be killed with a stick before it becomes
self-aware and starts breeding.
Or converted into a C function which humans have a chance of
understanding and maintaining.
(
Log in to post comments)