lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20100208105828.1136310a.akpm@linux-foundation.org>
Date:	Mon, 8 Feb 2010 10:58:28 -0800
From:	Andrew Morton <akpm@...ux-foundation.org>
To:	tytso@....edu
Cc:	Jan Kara <jack@...e.cz>,
	Christoph Egger <siccegge@...d.informatik.uni-erlangen.de>,
	linux-kernel@...r.kernel.org, Kazuo Moriwaka <moriwaka@...hat.com>,
	H Hartley Sweeten <hsweeten@...ionengravers.com>,
	Joel Becker <joel.becker@...cle.com>,
	linux-ext4@...r.kernel.org, vamos@...informatik.uni-erlangen.de
Subject: Re: [PATCH] obsolete config in kernel source (BUFFER_DEBUG)

On Mon, 8 Feb 2010 10:50:31 -0500 tytso@....edu wrote:

> I don't have an objection with removing this, but does anyone have the
> latest version of akpm's buffer debugging patches?

My version is datestamped four years ago :( It normally forward-ports
fairly easily.

> I *think* what happened is that akpm forward ported the removed buffer
> debugging patches, or maybe rewrote it from scratch, but for whatever
> reason they never made back into mainline.  Maybe they were too ugly
> to live in mainline, but they have been really handy on occasion.

I think Eric Sandeen might have a fresher version.  Nowadays it should
be done with the tracing infrastructure, I guess.  Although that
infrastructure may not be able to do this - the ext3 debug patch
recorded an LRU array of the below structs within every buffer_head. 
The various BUFFER_TRACE macros would emit a new record into the tail of the
target bh's b[] ring.

struct buffer_history {
	struct buffer_history_item {
		char *function;
		char *info;
		unsigned long b_state;
		unsigned b_list:3;
		unsigned b_jlist:4;
		unsigned pg_dirty:1;
		unsigned cpu:3;
		unsigned b_count:8;
		unsigned long b_blocknr;	/* For src != dest */
#if defined(CONFIG_JBD) || defined(CONFIG_JBD_MODULE)
		unsigned b_jcount:4;
		unsigned b_jbd:1;
		unsigned b_transaction:1;
		unsigned b_next_transaction:1;
		unsigned b_cp_transaction:1;
		unsigned b_trans_is_running:1;
		unsigned b_trans_is_committing:1;
		void *b_frozen_data;
		void *b_committed_data;
#endif
	} b[BUFFER_HISTORY_SIZE];
	unsigned long b_history_head;	/* Next place to write */
	unsigned long b_history_tail;	/* Oldest valid entry */
};

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ