README
CVS Repository Guidelines

Sections below:

TAGS                - patch comments required for CVS
LOG MESSAGES        - Format of commit messages and kernel-source.changes
DIRECTORY STRUCTURE - Not yet written

* TAGS *

At the top of each patch a header section includes tags and a comment describing
the patch.  The tags are described in detail in scripts/patch-tag-template, but
the rules for minimum tag usage are below.  scripts/patch-tag is provided to
help manage tags.  Documentation for patch-tag can be found at the top of
scripts/patch-tag, but basic usage for adding tags to a new patch would be:

	cp scripts/patch-tag-template ~/.patchtag
	edit ~/.patchtag with any default values you want
	patch-tag -e file.diff

Each patch must have a tag with someone in SUSE/Novell responsible for the
patch.  You may use any combination of From:, Signed-off-by: or Acked-by:.  

Each patch must have a Subject: tag briefly describing the patch, and each patch
must have a comment section explaining the patch in more detail.  This comment
can be a paragraph or less, but should generally be sufficient for mailing the
patch to linux-kernel.

When there is a corresponding bugzilla for a patch, it should have a References:
tag documenting the bug number.  If there are also relevant partner bugzillas,
they should be included in the same reference tag.

When a patch is merged into Linus' kernel, or taken from a mainline kernel, a
Patch-mainline: tag must be added to help manage merging with mainline in the
future.  The Patch-mainline tag allows a few special values, look in
scripts/patch-tag-template for these.

Example patch header:

From: Andrew Morton <akpm@osdl.org>
Subject: Fix EOF -EIO problems with direct io
References: 47120, LTC1001
Patch-mainline: 2.6.11-rc2

For reasons which escape me, blockdev_get_blocks() is returning -EIO if
the mapping request straddles the end of the disk.  This causes reads
which straddle end-of-disk to return -EIO.

Fix it up so that it correctly trims the returned result down to match
the size of the device, for both reads and writes.

If a write attempt is fully beyond end-of-device then return -EIO.  We
never get this far anyway, because generic_write_checks() will return
-ENOSPC if all of the write lies outside a blockdev's i_size.

Signed-off-by: Jens Axboe <axboe@suse.de>

* COMMIT MESSAGES *

kernel-source.changes should be updated for each commit.  The log entry must
include your username, the date, a brief summary of the changes, the file name
for any patches modified and any relevant bug numbers.  

scripts/log collects most of this information from tags present in any modified
files, and gives you a properly formatted message to edit. When using CVS
outside the R&D machines, scripts/log needs a copy of /work/src/bin/vc on your
local machine.

Example kernel-source.changes entry:

-------------------------------------------------------------------
Wed Dec  1 18:29:44 CET 2004 - agruen@suse.de

- patches.fixes/serialize-dgram-read.diff: Serialize dgram read
  using semaphore just like stream (#48427).

-------------------------------------------------------------------