code merge

update to closer match linux-3.4 source