SQL Server Agent执行Job失败 提示[396] An idle CPU condition has not been defined - OnIdle job schedules wi...

在手动执行Job失败,在Error Logs中看到的错误提示信息:[396] An idle CPU condition has not been defined - OnIdle job schedules will have no effect

看提示貌似CPU空闲条件设置的问题,再去另一台服务器新建一个同样的Job,却能执行成功。看来问题是出在SQL Server Agent设置上

打开SQL Server Agent属性发现Advance中有个defined CPU condition选项,选中再次执行成功。

转载于:https://www.cnblogs.com/Bonnie83/archive/2012/07/20/2601544.html

<think>我们正在讨论Linux内核中的电源管理属性,具体是关于'module-suspend-on-idle.timeout'的定义位置。根据引用[2]中的示例,我们看到在设备树中定义了一些电源管理相关的属性,例如arm,psci-suspend-param。因此,我们可以推测'module-suspend-on-idle.timeout'可能也需要在设备树中定义。但是,请注意引用[3]中提到了驱动程序在初始化队列时与电源管理相关的设置,这表明驱动程序代码中也可能涉及电源管理属性的设置。然而,根据用户提供的引用,设备树配置似乎是定义硬件相关属性的常见位置。此外,引用[1]中提到了suspendtoidle(s2idle)的状态处理,这与系统挂起相关,而'module-suspend-on-idle'听起来也与空闲时挂起模块有关。因此,这个属性很可能是针对某个硬件模块的,需要在设备树中该模块的节点下定义。因此,我们可以得出结论:'module-suspend-on-idle.timeout'属性应该在设备树中相应的模块节点下定义。例如,假设我们有一个名为my_module的模块,我们可以在设备树中这样定义:```my_module:my_module@address{compatible="vendor,my-module";...module-suspend-on-idle;module-suspend-on-idle.timeout=<1000>;//例如1000毫秒};```注意:属性名称中的连字符在设备树中是允许的,但通常使用短横线(-)而不是下划线(_)。另外,根据引用[2]中的示例,属性值使用尖括号(<>)包裹,表示一个32位的整数。如果这个属性是Linux内核中某个特定驱动所要求的,那么需要参考该驱动的文档或源码以确认属性名称和格式。综上所述,我们建议在设备树中对应的模块节点下定义'module-suspend-on-idle.timeout'属性。相关问题:1.设备树中如何定义电源管理相关的属性?2.如何为Linux内核模块设置空闲超时?3.设备树中电源管理属性的常见配置有哪些?</think>### module-suspend-on-idle.timeout 属性的定义位置 根据 Linux 电源管理机制和设备树配置规范,`module-suspend-on-idle.timeout` 属性应定义在 **设备树(Device Tree)** 中对应的模块节点下。具体位置如下: 1. **设备树节点内定义** 该属性需在特定硬件模块的设备树节点中声明,格式如下: ```dts my_module: my_module@address { compatible = "vendor,module-compatible"; ... module-suspend-on-idle; // 启用空闲挂起 module-suspend-on-idle.timeout = <1000>; // 超时时间(单位毫秒) }; ``` 其中: - `module-suspend-on-idle` 标志启用模块的空闲挂起功能 - `module-suspend-on-idle.timeout` 指定进入挂起状态前的空闲等待时间 2. **与 CPU 空闲状态关联** 如引用[2]所示,该属性可关联到 CPU 空闲状态配置中[^2]: ```dts idle-states { entry-method = "psci"; MODULE_IDLE: module-idle-state { compatible = "arm,idle-state"; module-suspend-on-idle.timeout = <500>; // 500ms超时 // 其他参数如延迟等 }; }; ``` 3. **驱动程序初始化** 驱动程序在初始化时需解析此属性(如引用[3]的电源管理初始化逻辑[^3]): ```c static int my_driver_probe(struct platform_device *pdev) { u32 timeout; // 从设备树读取超时值 of_property_read_u32(pdev->dev.of_node, "module-suspend-on-idle.timeout", &timeout); // 配置模块电源策略 configure_power_management(timeout); } ``` **关键说明**: - 超时值单位为毫秒(ms),使用设备树标准语法 `< >` 包裹 - 需确保内核驱动实现了对该属性的解析逻辑 - 该属性通常用于外设模块(如 GPU、DSP 等),而非 CPU 核心 --- ### 相关问题 1. 设备树中定义电源管理属性的标准语法是什么? 2. 如何验证 `module-suspend-on-idle.timeout` 属性已被内核正确解析? 3. Linux 驱动程序中如何处理设备树中的自定义电源管理属性? 4. 不同外设模块的空闲超时设置是否存在冲突?如何协调? [^1]: 引用自 suspend to idle 状态处理流程说明 [^2]: 引用自 ARM 设备树空闲状态配置示例 [^3]: 引用自驱动程序电源管理初始化代码片段
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值