Upstream commits taken from WL500G, trying to fix large disk support

kernel.org commits
 8f76d151b010980d137bfdc736d1d8f64b489165 [SCSI] fix sign extension with 1.5TB usb-storage LBD=y
 f27bac2761cab5a2e212dea602d22457a9aa6943 [SCSI] sd: update index allocation and use ida instead of idr
Backported from upstream: partitions: use sector size for EFI GPT

Kernel commit: 7d13af3279985f554784a45cc961f706dbcdbdd1
Backported from upstream: partitions: read whole sector with EFI GPT header

Kernel.org commit: 87038c2d5bda2418fda8b1456a0ae81cc3ff5bd8
Added unaligned Linux headers
Backed out kernel.org commit f27bac2761cab5a2e212dea602d22457a9aa6943 for now as it will require additional patches
Switched to Tomato backport as it was more adapted to our antique kernel
Reapplied kernel.org commit f27ba...

This reverts commit e94d1a78cac66af4d7c17c74d14cde45a1ac965c.
[SCSI] sd: revive sd_index_lock

Backported from kernel.org commit "4034cc68157bfa0b6622efe368488d3d3e20f4e6"
Merge branch 'kernel-lbd'