设为首页 收藏本站
查看: 768|回复: 0

[经验分享] docker-1.12.6-support_loongson.patch

[复制链接]

尚未签到

发表于 2017-11-27 10:33:37 | 显示全部楼层 |阅读模式
                                                diff -Nur docker.orig/daemon/graphdriver/devmapper/deviceset.go docker/daemon/graphdriver/devmapper/deviceset.go
--- docker.orig/daemon/graphdriver/devmapper/deviceset.go        2017-09-20 21:29:26.000000000 +0800
+++ docker/daemon/graphdriver/devmapper/deviceset.go        2017-11-24 16:33:26.525115486 +0800
@@ -1531,7 +1531,7 @@
                return 0, 0, err
        }

-        dev := stat.Sys().(*syscall.Stat_t).Rdev
+        dev := uint64(stat.Sys().(*syscall.Stat_t).Rdev)
        majorNum := major(dev)
        minorNum := minor(dev)

@@ -1713,7 +1713,7 @@
        //        - Managed by docker
        //        - The target of this device is at major <maj> and minor <min>
        //        - If <inode> is defined, use that file inside the device as a loopback image. Otherwise use the device itself.
-        devices.devicePrefix = fmt.Sprintf("docker-%d:%d-%d", major(sysSt.Dev), minor(sysSt.Dev), sysSt.Ino)
+        devices.devicePrefix = fmt.Sprintf("docker-%d:%d-%d", major(uint64(sysSt.Dev)), minor(uint64(sysSt.Dev)), sysSt.Ino)
        logrus.Debugf("devmapper: Generated prefix: %s", devices.devicePrefix)

        // Check for the existence of the thin-pool device
diff -Nur docker.orig/docker-lvm-plugin-8647404eed561d32835d6bc032b1c330ee31ed5b/vendor/src/github.com/docker/docker/pkg/system/stat_linux.go docker/docker-lvm-plugin-8647404eed561d32835d6bc032b1c330ee31ed5b/vendor/src/github.com/docker/docker/pkg/system/stat_linux.go
--- docker.orig/docker-lvm-plugin-8647404eed561d32835d6bc032b1c330ee31ed5b/vendor/src/github.com/docker/docker/pkg/system/stat_linux.go        2016-12-22 00:13:44.000000000 +0800
+++ docker/docker-lvm-plugin-8647404eed561d32835d6bc032b1c330ee31ed5b/vendor/src/github.com/docker/docker/pkg/system/stat_linux.go        2017-11-24 13:50:47.815935368 +0800
@@ -10,7 +10,7 @@
                mode: s.Mode,
                uid:  s.Uid,
                gid:  s.Gid,
-                rdev: s.Rdev,
+                rdev: uint64(s.Rdev),
                mtim: s.Mtim}, nil
}

diff -Nur docker.orig/docker-novolume-plugin-385ec70baac3ef356f868f391c8d7818140fbd44/Godeps/_workspace/src/github.com/docker/docker/pkg/system/stat_linux.go docker/docker-novolume-plugin-385ec70baac3ef356f868f391c8d7818140fbd44/Godeps/_workspace/src/github.com/docker/docker/pkg/system/stat_linux.go
--- docker.orig/docker-novolume-plugin-385ec70baac3ef356f868f391c8d7818140fbd44/Godeps/_workspace/src/github.com/docker/docker/pkg/system/stat_linux.go        2016-09-28 21:50:34.000000000 +0800
+++ docker/docker-novolume-plugin-385ec70baac3ef356f868f391c8d7818140fbd44/Godeps/_workspace/src/github.com/docker/docker/pkg/system/stat_linux.go        2017-11-24 13:51:15.544752988 +0800
@@ -10,7 +10,7 @@
                mode: s.Mode,
                uid:  s.Uid,
                gid:  s.Gid,
-                rdev: s.Rdev,
+                rdev: uint64(s.Rdev),
                mtim: s.Mtim}, nil
}

diff -Nur docker.orig/pkg/loopback/loopback.go docker/pkg/loopback/loopback.go
--- docker.orig/pkg/loopback/loopback.go        2017-09-20 21:29:26.000000000 +0800
+++ docker/pkg/loopback/loopback.go        2017-11-24 15:47:17.571344699 +0800
@@ -53,7 +53,7 @@
                }

                dev, inode, err := getLoopbackBackingFile(file)
-                if err == nil && dev == targetDevice && inode == targetInode {
+                if err == nil && dev == uint64(targetDevice) && inode == targetInode {
                        return file
                }
                file.Close()
diff -Nur docker.orig/pkg/platform/architecture_linux.go docker/pkg/platform/architecture_linux.go
--- docker.orig/pkg/platform/architecture_linux.go        2017-09-20 21:29:26.000000000 +0800
+++ docker/pkg/platform/architecture_linux.go        2017-11-24 15:59:42.245902816 +0800
@@ -14,3 +14,17 @@
        }
        return charsToString(utsname.Machine), nil
}
+
+// Convert the OS/ARCH-specific utsname.Machine to string
+// given as an array of signed int8
+func charsToString(ca [65]int8) string {
+        s := make([]byte, len(ca))
+        var lens int
+        for ; lens < len(ca); lens++ {
+                if ca[lens] == 0 {
+                        break
+                }
+                s[lens] = uint8(ca[lens])
+        }
+           return string(s[0:lens])
+}
diff -Nur docker.orig/pkg/signal/signal_linux.go docker/pkg/signal/signal_linux.go
--- docker.orig/pkg/signal/signal_linux.go        2017-09-20 21:29:26.000000000 +0800
+++ docker/pkg/signal/signal_linux.go        2017-11-24 14:06:01.824448193 +0800
@@ -30,7 +30,6 @@
        "PWR":      syscall.SIGPWR,
        "QUIT":     syscall.SIGQUIT,
        "SEGV":     syscall.SIGSEGV,
-        "STKFLT":   syscall.SIGSTKFLT,
        "STOP":     syscall.SIGSTOP,
        "SYS":      syscall.SIGSYS,
        "TERM":     syscall.SIGTERM,
@@ -38,7 +37,6 @@
        "TSTP":     syscall.SIGTSTP,
        "TTIN":     syscall.SIGTTIN,
        "TTOU":     syscall.SIGTTOU,
-        "UNUSED":   syscall.SIGUNUSED,
        "URG":      syscall.SIGURG,
        "USR1":     syscall.SIGUSR1,
        "USR2":     syscall.SIGUSR2,
diff -Nur docker.orig/pkg/system/stat_linux.go docker/pkg/system/stat_linux.go
--- docker.orig/pkg/system/stat_linux.go        2017-09-20 21:29:26.000000000 +0800
+++ docker/pkg/system/stat_linux.go        2017-11-24 13:51:30.444402271 +0800
@@ -10,7 +10,7 @@
                mode: s.Mode,
                uid:  s.Uid,
                gid:  s.Gid,
-                rdev: s.Rdev,
+                rdev: uint64(s.Rdev),
                mtim: s.Mtim}, nil
}

diff -Nur docker.orig/vendor/src/github.com/boltdb/bolt/bolt_mips64el.go docker/vendor/src/github.com/boltdb/bolt/bolt_mips64el.go
--- docker.orig/vendor/src/github.com/boltdb/bolt/bolt_mips64el.go        1970-01-01 08:00:00.000000000 +0800
+++ docker/vendor/src/github.com/boltdb/bolt/bolt_mips64el.go        2017-11-24 15:26:48.247367232 +0800
@@ -0,0 +1,11 @@
+// +build mips64le
+package bolt
+
+// maxMapSize represents the largest mmap size supported by Bolt.
+const maxMapSize = 0xFFFFFFFFFFFF // 256TB
+
+// maxAllocSize is the size used when creating array pointers.
+const maxAllocSize = 0x7FFFFFFF
+
+// Are unaligned load/stores broken on this arch?
+var brokenUnaligned = false
diff -Nur docker.orig/vendor/src/github.com/opencontainers/runc/libcontainer/system/syscall_linux_64.go docker/vendor/src/github.com/opencontainers/runc/libcontainer/system/syscall_linux_64.go
--- docker.orig/vendor/src/github.com/opencontainers/runc/libcontainer/system/syscall_linux_64.go        2017-09-20 21:29:26.000000000 +0800
+++ docker/vendor/src/github.com/opencontainers/runc/libcontainer/system/syscall_linux_64.go        2017-11-24 15:55:46.105395846 +0800
@@ -1,4 +1,4 @@
-// +build linux,arm64 linux,amd64 linux,ppc linux,ppc64 linux,ppc64le linux,s390x
+// +build linux,arm64 linux,amd64 linux,ppc linux,ppc64 linux,ppc64le linux,s390x linux,mips64le

package system

diff -Nur docker.orig/vendor/src/github.com/tonistiigi/fifo/handle_linux.go docker/vendor/src/github.com/tonistiigi/fifo/handle_linux.go
--- docker.orig/vendor/src/github.com/tonistiigi/fifo/handle_linux.go        2017-09-20 21:29:26.000000000 +0800
+++ docker/vendor/src/github.com/tonistiigi/fifo/handle_linux.go        2017-11-24 14:25:52.777741009 +0800
@@ -36,7 +36,7 @@
        h := &handle{
                f:    f,
                name: fn,
-                dev:  stat.Dev,
+                dev:  uint64(stat.Dev),
                ino:  stat.Ino,
        }

@@ -62,7 +62,7 @@
        if err := syscall.Stat(h.procPath(), &stat); err != nil {
                return "", errors.Wrapf(err, "path %v could not be statted", h.procPath())
        }
-        if stat.Dev != h.dev || stat.Ino != h.ino {
+        if uint64(stat.Dev) != h.dev || stat.Ino != h.ino {
                return "", errors.Errorf("failed to verify handle %v/%v %v/%v", stat.Dev, h.dev, stat.Ino, h.ino)
        }
        return h.procPath(), nil
diff -Nur docker.orig/vendor/src/github.com/vishvananda/netns/netns_linux_mips64le.go docker/vendor/src/github.com/vishvananda/netns/netns_linux_mips64le.go
--- docker.orig/vendor/src/github.com/vishvananda/netns/netns_linux_mips64le.go        1970-01-01 08:00:00.000000000 +0800
+++ docker/vendor/src/github.com/vishvananda/netns/netns_linux_mips64le.go        2017-11-24 15:54:50.487542244 +0800
@@ -0,0 +1,7 @@
+// +build linux,mips64le
+
+package netns
+
+const (
+        SYS_SETNS = 5303
+)


                                       


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-419569-1-1.html 上篇帖子: docker快速部署sql server 2017开发版 下篇帖子: Docker 架构详解
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表