All of lore.kernel.org
 help / color / mirror / Atom feed
From: agk@sourceware.org <agk@sourceware.org>
To: lvm-devel@redhat.com
Subject: LVM2/lib/device dev-md.c
Date: 24 Oct 2007 11:24:24 -0000	[thread overview]
Message-ID: <20071024112424.20365.qmail@sourceware.org> (raw)

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	agk at sourceware.org	2007-10-24 11:24:24

Modified files:
	lib/device     : dev-md.c 

Log message:
	explanation of md superblock location & avoid compilation warnings

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/device/dev-md.c.diff?cvsroot=lvm2&r1=1.7&r2=1.8

--- LVM2/lib/device/dev-md.c	2007/10/24 00:51:05	1.7
+++ LVM2/lib/device/dev-md.c	2007/10/24 11:24:24	1.8
@@ -22,7 +22,7 @@
 /* Lifted from <linux/raid/md_p.h> because of difficulty including it */
 
 #define MD_SB_MAGIC 0xa92b4efc
-#define MD_RESERVED_BYTES (64 * 1024)
+#define MD_RESERVED_BYTES (64 * 1024ULL)
 #define MD_RESERVED_SECTORS (MD_RESERVED_BYTES / 512)
 #define MD_NEW_SIZE_SECTORS(x) ((x & ~(MD_RESERVED_SECTORS - 1)) \
 				- MD_RESERVED_SECTORS)
@@ -40,14 +40,21 @@
 	return 0;
 }
 
-/* FIXME Explain this algorithm */
-static uint64_t _v1_sb_offset(uint64_t size, int minor_version)
+/*
+ * Calculate the position of the superblock.
+ * It is always aligned to a 4K boundary and
+ * depending on minor_version, it can be:
+ * 0: At least 8K, but less than 12K, from end of device
+ * 1: At start of device
+ * 2: 4K from start of device.
+ */
+static uint64_t _v1_sb_offset(uint64_t size, unsigned minor_version)
 {
 	uint64_t sb_offset;
 
 	switch(minor_version) {
 	case 0:
-		sb_offset = (size - 8 * 2) & ~(4 * 2 - 1);
+		sb_offset = (size - 8 * 2) & ~(4 * 2 - 1ULL);
 		break;
 	case 1:
 		sb_offset = 0;



             reply	other threads:[~2007-10-24 11:24 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-10-24 11:24 agk [this message]
  -- strict thread matches above, loose matches on Subject: below --
2009-07-20 18:44 LVM2/lib/device dev-md.c snitzer
2009-07-20 18:33 snitzer
2008-09-19  7:18 agk
2007-10-24  0:30 agk

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20071024112424.20365.qmail@sourceware.org \
    --to=agk@sourceware.org \
    --cc=lvm-devel@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.