lkml.org 
[lkml]   [2000]   [Sep]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC] my current kernel todo list


On Mon, 4 Sep 2000, Tigran Aivazian wrote:

> Hi Arnaldo,
>
> That is a very decent list you have got there. How about to add to
> it:
>
> - go through all filesystems and convert them from using
> mark_buffer_dirty(bh, [0,1]) to just mark_buffer_dirty(bh) since the flag
> is now ignored and all buffers are flushed at equal intervals. Also,
> change the exported interface, of course.
>
> Conceptually simple, but a lot (at least 3 hours) of work.

Are you kidding? In nvi:

iI:Vi ^V<ESC>f:r^V
;CG/mark_buffer_dirty/^V
w%dF,:x^V<ESC>2k"a3dd@a<ESC>0"bd$
ifind . -name '*.[chS]'|xargs grep -nw mark_buffer_dirty /dev/null<ESC>!!sh

and then press @b on the obvius lines. Doing the rest by hands will not
take anywhere near 3 hours. I'm not saying that it's the most elegant way
to write such macro, but it will work (<ESC> stands for Esc and ^V for
Ctrl-V, indeed).


Translation for vi-impaired: first 3 lines enter the string
I:Vi ^[f:r^M;CG/mark_buffer_dirty/^Mw%dF,:x^[2k"ad3d@a
and move it into buffer b. The next line inserts the obvious command
and filters it through sh, giving you the list of all instances of
mark_buffer_dirty.

After that, @b would execute the macro stored in buffer b, that is
insert ':Vi ' in the beginning of line
find first ':' after it
replace it with <CR>
repeat the last search (== find next ':')
replace it and the rest of line with
G/mark_buffer_dirty/
w%dF,:x
[at that point you have
:Vi <file>
G<line>/mark_buffer_dirty/
w%dF,:x
where your line was]
go 2 lines up
move 3 lines into buffer a
execute macro stored in a, that is
open a new window that would contain <file>
go to line number <line>
search for mark_buffer_dirty
go to the next word (that will be'(')
go to the corresponding ')'
delete back to the ','
save file and close the window

IOW, @b goes to the corresponding instance of mark_buffer_dirty and
removes the second argument. That's it.

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

\
 
 \ /
  Last update: 2005-03-22 12:39    [W:0.085 / U:9.732 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site