Using patch in the real world
Most of the time a 'patch'
patch multiple source files in a source flie tree,
I'll asume this is your situation.
Doing a 'man patch' gives you:
patch - apply a diff file to an original
patch [options] [originalfile [patchfile]]
but usually just
patch -pnum <patchfile
The way you invoked patch thinks you wanted to patch the file
madwifi.patch and then waits for info.
Your system does not hang,
it just sits there and waits for input.
"patch -p0 < madwifi.patch"
It will tell patch to patch the current directory,
and read the patch-info from std-in,
The patchfile is 'piped' into std-in.
It should work.
"What should I do now"
and if that doesn't help you, man man"